0

ナビゲーションに UITabBar コントローラーを使用する単純なアプリがあります。tabBar に ViewA と ViewB があるとします。すべて正常に動作します。ただし、押されたときにユーザーに ViewB を表示する UIButton を ViewA に追加することも必要です。

つまり、ViewA から ViewB に到達するには 2 つの方法があります。1 つ目は tabBar からのもので、2 つ目は ViewA のボタンを押すことによるものです。

これを達成する最善の方法は何でしょうか。ありがとう。

4

1 に答える 1

0

それでは、ViewA.h でプロトコルを定義します。

@protocol ViewADelegate
-(void)viewAPressButton;
@end

ViewA にプロパティを追加します。

@property (nonatomic, assign) id<ViewADelegate> delegate

このコントローラーをインスタンス化するときに、このプロパティを設定することを忘れないでください。

ViewA.m でボタンが押されたときにこのメソッドを呼び出します

-(IBAction)buttonPressed:(id)sender {
[delegate viewAPressButton];
}

次に、正しい場所に実装します(おそらくあなたの場合はAppDelegateですか?)ViewBがインデックス1であると仮定します

-(void)ViewAPressButton {
[self.tabBarController setSelectedIndex:1];
}
于 2013-03-27T17:32:34.237 に答える