告诉 UITabBar 要加载哪个视图
Posted
技术标签:
【中文标题】告诉 UITabBar 要加载哪个视图【英文标题】:Tell UITabBar which view to load 【发布时间】:2011-04-15 12:03:18 【问题描述】:有没有办法在触摸 UITabBar 按钮时根据某些状态加载视图? 例如,我触摸“主页”按钮 View1 加载。比我做一些代码,当我再次触摸“主页”按钮时,View2 加载。
【问题讨论】:
【参考方案1】:可以做到...假设我们在内存中有两个视图 myView1 & myView2..
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item
if(OnPressHomeTabBarButton) // Put your condition at this place
[myView1 removeFromSuperview];
[self.view addSubview:myView2];
else
[myView2 removeFromSuperview];
[self.view addSubview:myView1];
【讨论】:
【参考方案2】:是的,您可以设置属性viewControllers。
查看文档中的此注释:
如果你改变这个值 运行时的属性,标签栏 控制器删除所有旧视图 安装新的控制器之前 那些。新的标签栏项目 显示视图控制器 立即而不是动画成 位置。改变视图时 控制器,标签栏控制器 记住视图控制器对象 之前选择的和 尝试重新选择它。如果 选定的视图控制器不再 目前,它试图选择 在同一索引处查看控制器 数组作为先前的选择。 如果该索引无效,则选择 索引 0 处的视图控制器。
【讨论】:
以上是关于告诉 UITabBar 要加载哪个视图的主要内容,如果未能解决你的问题,请参考以下文章
选择 UITableViewCell 时 UITabBar 消失
iOS:在 UITabBar/UINavigationController 应用程序的视图中设置 nib 子视图中的文本