1

ストーリーボードで作成された2つのビューコントローラーとタブバーコントローラーがあります。

関連するタブ バーが押されたときに、2 つのビュー コントローラーのいずれかでメソッドを実行することは可能ですか?

いくつかの方法を試しましたが、firstViewController のオブジェクトを初期化する場合は、firstViewController または secondViewController に nib 名が必要です。通常、firstViewController は起動時に作成されます。

助けていただければ幸いです。私は uitabcontroller アプリのデリゲートに漠然と精通していますが、2 つのビュー コントローラーをタブ コントローラーに接続する方法がわかりません。

4

2 に答える 2

2

ストーリーボードを使用している場合は、これを行います

didFinishLaunchingWithOptionsで

UITabBarController *tabBar = (UITabBarController *)self.window.rootViewController;
[tabBar setDelegate:self];

その後

-(void) tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController
{
   //Write your code here
}
于 2014-11-10T15:26:54.657 に答える
2

を見てくださいUITabViewController Delegate

タブ バーの動作を拡張する場合は、 UITabBarControllerDelegateプロトコルを使用します。特に、特定のタブを選択する必要があるかどうかを判断したり、タブが選択された後にアクションを実行したり、ユーザーがタブの順序をカスタマイズする前後にアクションを実行したりするために使用できます。これらのメソッドをカスタム オブジェクトに実装したら、そのオブジェクトを対応するUITabBarControllerオブジェクトのデリゲート プロパティに割り当てる必要があります。

このプロトコルのすべてのメソッドはオプションです。

参照 : http://developer.apple.com/library/ios/#DOCUMENTATION/UIKit/Reference/UITabBarControllerDelegate_Protocol/Reference/Reference.html


必要なものは、実装することで達成できるはずです:

- (void)tabBarController:(UITabBarController *)tabBarController 
 didSelectViewController:(UIViewController *)viewController
于 2012-05-01T19:53:46.877 に答える