ABPersonPickerNavigationController и UITabbarController - PullRequest
2 голосов
/ 27 сентября 2011

Как мы можем использовать ABPersonPickerNavigationController, предположим, что третья вкладка UITabbarcontroller.

На самом деле я показываю все контакты адресной книги в этом контроллере ... поэтому я использую ABPersonPickerNavigationController

В настоящее время я использую этот код, но когда мы нажимаем на третью вкладку UITabbarcontroller .., этот контроллер будет представлен, и мы не можем видеть, что UITabbar ..

Вот мой код ..

-(void)viewWillAppear:(BOOL)animated
{
    // creating the picker
    ABPeoplePickerNavigationController *picker = [[ABPeoplePickerNavigationController alloc] init];

    // place the delegate of the picker to the controll
    picker.peoplePickerDelegate = self;

    // showing the picker
    [self presentModalViewController:picker animated:NO];

    // releasing
    [picker release];   
}

Итак, что я могу сделать, чтобы можно было увидеть и ABPersonPickerNavigationController, и UITabbarcontroller ...

Пожалуйста, помогите мне решить эту проблему ..

Заранее спасибо ...

Ответы [ 2 ]

0 голосов
/ 23 декабря 2011

Попробуйте добавить такой код в делегат приложения:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
UITabBarController *tabBar = [[UITabBarController alloc] init];
ABPeoplePickerNavigationController *picker = [[ABPeoplePickerNavigationController alloc] init];
tabBar.viewControllers = [NSArray arrayWithObjects:viewFor1stTab, viewForSecondTab, picker, nil];

[self.window add subview tabBar.view];

замените viewFor1stTab, viewForSecondTab на представления, которые вы хотите использовать для этих вкладок. Пожалуйста, прочтите документацию, это, вероятно, самая основная функция UITabBarController.

0 голосов
/ 27 сентября 2011

вместо

[self presentModalViewController:picker animated:NO];

Попробуйте это

[self.navigationController pushViewController:[[picker viewControllers] objectAtIndex:1] animated:NO];

Проверьте структуру вашего контроллера. Требуется UINavigationController.

UITabBarController - UINavgationController - UIViewController

Но я рекомендую настраивать контроллер выбора людей, используя AddressBook Framework, а не AddressBookUI.

Без настройки вы можете изменить только несколько факторов.

...