swift - UITabBar 项目确实选择没有在 swift 5 中调用
问题描述
我在 swift 5 中使用过 tabbar 。但是当我点击标签栏项目时,标签栏没有选择项目没有调用。但我没有使用TabbarViewController。我在我的 viewController 中使用了下面的代码。
class ViewController: UIViewController,UITabBarDelegate {
@IBOutlet weak var bottomTab: UITabBar!
override func viewDidLoad() {
super.viewDidLoad()
bottomTab.delegate = self
}
func tabBar(tabBar: UITabBar, didSelectItem item: UITabBarItem) {
print("Selected item")
}
}
请帮我从 viewController 调用 didSelectItem
解决方案
1)在你的ViewController继承UITabBarControllerDelegate
2) 在 viewDidLoad 中设置委托
3) 添加功能
例子:
class ViewController: UIViewController, UITabBarControllerDelegate {
func tabBarController(_ tabBarController: UITabBarController, didSelect viewController: UIViewController) {
let tabBarIndex = tabBarController.selectedIndex
if tabBarIndex == 0 {
//do your stuff
}
}
override func viewDidLoad() {
super.viewDidLoad()
self.tabBarController?.delegate = self
}
}
推荐阅读
- typescript - 打字稿条件类型
- javascript - 如何在反应路由器中使用 match.params
- python - (Python/VS 代码)无法安装 scipy
- reactjs - 通过按钮将表单从 onRead 更改为 Edit
- excel - 比较非长度的两列时出现 VLOOKUP 问题
- javascript - 我如何在反应中使用 fetch 提交表单数据和文件?
- r - 仅基于 R 中的一列删除重复行
- java - java - 如何按年龄顺序对java中的对象数组或数组列表(包含假设10个对象)进行排序
- javascript - 如何从日历获取输入并使用 JavaScript 和 HTML 打印日期
- javascript - JavaScript 错误:“竞赛”不是函数