在Storyboard中,我创建了UITabBarController
,其中有6个与另一个视图控制器的关系。所以现在我有6 UITabBarItems
。我将它们从 0 标记为 5 。这就是我检测用户选择UITabBarItem
的原因。
注意:
我无法使用selectedIndex
,因为这种方式并不能告诉我选择了哪个标签,因为用户可以更改UITabBar
中的项目顺序。
在UITabBar
内有属性items
和selectedItem
,但如果有超过5项,则属性items
会保留最多 5 项
例如,当用户在索引 4 或 5 时选择UITabBarItem
时,所选索引均为4。现在,UITabBarItem
索引 4 表示标签栏"更多项目" 。
所以,我真的需要访问所选的UITabBarItem
来获取标记。有什么方法可以做到这一点吗?
这是我的情况。
答案 0 :(得分:1)
经过大量挖掘,解决方案非常简单: - )
符合Rng.Rows(r)
协议的UITabBarController
delegate
内
:
UINavigationControllerDelegate
答案 1 :(得分:0)
您可以尝试这样的事情
tabBarController.selectedViewController.view.tag
因为UIViewController没有标签,但是它的视图有。
另外,你可以使用UIViewController的属性restorationIdentifier