导航栏项目作为标签栏项目
Posted
技术标签:
【中文标题】导航栏项目作为标签栏项目【英文标题】:Navigation bar item as tab bar item 【发布时间】:2017-03-29 11:20:27 【问题描述】:我确实搜索了与我的问题类似的内容,但没有找到任何可以帮助我解决问题的内容。
是否可以将导航栏项目的行为设置为标签栏项目?
我使用 TabBarController。每个选项卡项都应显示相应的 ViewController。当用户点击导航栏中的项目时,它也应该在底部标签栏上显示相应的 ViewController。并且这个 ViewController 应该作为标签栏控制器,而不是在底部标签栏中显示标签项。
如何实现上述场景?或任何其他想法如何实施,拜托!每个 ViewController 的顶部和底部栏几乎总是可见的。
【问题讨论】:
你应该有两个tabBarControllers
。第一个控制器将是父集true
for tabBar.isHidden
,你应该在每个ViewCotroller
添加类似的按钮,这将改变tabBar.selectedIndex
所以你将有一个 ViewController 用于第一个项目和第二个 tabBarController
这将首先是孩子tabBarController
。不要犹豫,问我更多
【参考方案1】:
从 IB 中的条形按钮项拖放到您的类文件并定义一个出口,然后在 viewDidLoad 创建一个手势识别器,向您的手势识别器添加一个动作,一切就绪。我希望它有所帮助。
class SomeClass: UIViewControler
let someBarButton:UIBarButtonItem!
override func viewDidLoad()
super.viewDidLoad()
let tap = UITapGestureRecognizer(target: self, action: #selector(SomeClass.tapFunction))
someBarButton.addGestureRecognizer(tap)
func tapFunction()
//take me to a view controller
self.performSegue(withIdentifier: "myIdentifier", sender: self)
【讨论】:
只是过渡到 ViewController。我想通过点击 barButtonItem 作为 TabBarController 的子项来显示 ViewController。以上是关于导航栏项目作为标签栏项目的主要内容,如果未能解决你的问题,请参考以下文章