我有一个使用UITabBar控制器进行导航的简单应用程序。假设我在tabBar上有ViewA和ViewB。一切正常。但是我还想在ViewA中添加一个UIButton,它会在按下时向用户显示ViewB。
换句话说,从ViewA到ViewB有两种方法。第一个来自tabBar,第二个是按ViewA中的按钮。
实现这一目标的最佳方式是什么?感谢。
答案 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];
}