もともと入っている電話アプリなんかは、タブバーを選択すると連絡先が表示されるようになっていますが、それを実装するために、いろいろ試行錯誤してみましたが、以下のようにすることで、実装出来ました。
この件に関しては、あまり、情報がなかった(モーダルビューにpickerを表示させる例は多々ありましたが・・・)ので、スマートな方法かどうかは不明ですので、もし、もっとスマートな方法をご存知の方がいらっしゃいましたら、是非コメントください。
– (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
tabBarController = [[UITabBarController alloc] init];
NSMutableArray *localViewControllersArray = [[NSMutableArray alloc] initWithCapacity:4];
ABPeoplePickerNavigationController *contactsNavController = [[ABPeoplePickerNavigationController alloc] init];
contactsNavController.tabBarItem.title = @”連絡先”;
contactsNavController.allowsCancel = NO;
contactsNavController.allowsCardEditing = YES;
contactsNavController.peoplePickerDelegate=self;
[localViewControllersArray addObject:contactsNavController];
FirstViewController *contactsNavController2 = [[FirstViewController alloc] init];
contactsNavController2.tabBarItem.title = @”グループ管理”;
[localViewControllersArray addObject:contactsNavController2];
SettingViewController *contactsNavController3 = [[SettingViewController alloc] init];
contactsNavController3.tabBarItem.title = @”設定”;
[localViewControllersArray addObject:contactsNavController3];
SettingViewController *contactsNavController4 = [[SettingViewController alloc] init];
contactsNavController4.tabBarItem.title = @”お気に入り”;
[localViewControllersArray addObject:contactsNavController4];
tabBarController.viewControllers = localViewControllersArray;
[localViewControllersArray release];
// Add the tab bar controller’s view to the window and display.
[self.window addSubview:tabBarController.view];
[self.window makeKeyAndVisible];
return YES;
}