按下按钮时显示 ViewController,同时还存在 tabBar
Posted
技术标签:
【中文标题】按下按钮时显示 ViewController,同时还存在 tabBar【英文标题】:Show a ViewController when button pressed, while a tabBar is also present 【发布时间】:2013-03-27 16:16:08 【问题描述】:我有一个使用 UITabBar 控制器进行导航的简单应用程序。假设我在 tabBar 上有 ViewA 和 ViewB。一切正常。但是,我还想向 ViewA 添加一个 UIButton,当按下时会向用户显示 ViewB。
换句话说,有两种方法可以从 ViewA 到达 ViewB。第一个来自 tabBar,第二个来自 ViewA 中的按钮。
实现这一点的最佳方法是什么。谢谢。
【问题讨论】:
你为什么不使用 tabBarController ? 抱歉,我的意思是我已经在使用 tabBar 控制器了。为了更清楚,刚刚编辑了我的问题, UITabBarController is possible to select the tab via code?的可能重复 【参考方案1】:好的,那么我将在 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];
【讨论】:
以上是关于按下按钮时显示 ViewController,同时还存在 tabBar的主要内容,如果未能解决你的问题,请参考以下文章
按下单元格内的图像时显示 ViewController [重复]