В моем приложении, когда я получаю уведомление, я показываю customView. И если пользователь коснется где-нибудь на экране, вид исчезнет. У меня есть UITabBar
с четырьмя вкладками. После получения уведомления, когда я нажимаю на представление, должна быть выбрана 2-я вкладка (я могу быть где угодно в приложении). Но я не могу выбрать вторую вкладку. Всегда открывается первая вкладка. Как мне вызвать «didSelect item» из этого customView? Ниже приведен мой код. Пожалуйста, проверьте его и помогите мне решить мою проблему.
Мой код:
{
let storyBoard = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "MainTabbarView") as? MainTabbarView
storyBoard?.selectItem(withIndex: 3)
}
В моем UITabBarController я написал следующий код:
func selectItem(withIndex index: Int) {
if let controller = tabBarController, let tabBar = tabBarController?.tabBar, let items = tabBarController?.tabBar.items {
guard index < items.count else { return }
controller.selectedIndex = index
controller.tabBar(tabBar, didSelect: items[index])
}
}
override func tabBar(_ tabBar: UITabBar, didSelect item: UITabBarItem) {
if let items = tabBar.items {
items.enumerated().forEach { if $1 == item { print("your index is: \($0)") } }
}
}