Xcode 6 を使用して、提供されたテンプレートでストーリーボードを使用して、タブ付きアプリケーションを作成しました。
UITabBarController の 3 番目のタブが選択されたときに起動する関数が必要です。
タブをクリックしてビューにアクセスするたびに起動する必要があるため、ViewDidLoad を使用できません (初回だけでなく)。後続の (モーダル) ビュー コントローラーからセグバックするのとは対照的です。
アドバイスをいただければ幸いです。よろしくお願いします。
Xcode 6 を使用して、提供されたテンプレートでストーリーボードを使用して、タブ付きアプリケーションを作成しました。
UITabBarController の 3 番目のタブが選択されたときに起動する関数が必要です。
タブをクリックしてビューにアクセスするたびに起動する必要があるため、ViewDidLoad を使用できません (初回だけでなく)。後続の (モーダル) ビュー コントローラーからセグバックするのとは対照的です。
アドバイスをいただければ幸いです。よろしくお願いします。
一部の UIViewController クラスで UITabBarControllerDelegate のこのデリゲート メソッドを実装します。
- (void)tabBarController:(UITabBarController *)theTabBarController didSelectViewController:(UIViewController *)viewController {
NSUInteger indexOfTab = [theTabBarController.viewControllers indexOfObject:viewController];
// Your code here
}
また
UITabBarController をサブクラス化し、次のメソッドをオーバーライドできます。
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item {
NSUInteger indexOfTab = [[theTabBar items] indexOfObject:item];
// Your code here}