按下按钮时显示ViewController,同时还存在tabBar

时间:2013-03-27 16:16:08

标签: objective-c xcode uibutton uitoolbar

我有一个使用UITabBar控制器进行导航的简单应用程序。假设我在tabBar上有ViewA和ViewB。一切正常。但是我还想在ViewA中添加一个UIButton,它会在按下时向用户显示ViewB。

换句话说,从ViewA到ViewB有两种方法。第一个来自tabBar,第二个是按ViewA中的按钮。

实现这一目标的最佳方式是什么?感谢。

1 个答案:

答案 0 :(得分: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];
}