Вы можете получить доступ к индексу выбранного элемента, используя следующий код в UIViewController
. всегда будет возвращать индекс вашей вкладки.
self.tabBarController.selectedIndex;
Так что, если у вас есть, например, 6 пунктов, которые вы можете перейти на вкладку «Еще ...», выберите свой «5-й» элемент, и выбранный индекс будет 4 . Если вы перейдете на вкладку «Дополнительно» и выберите 6-й элемент, он вернет 5 .
<ч />
РЕДАКТИРОВАТЬ: Если вы хотите проверить текущую позицию некоторого UITabBarItem, вы можете сделать это:
Во-первых, в своем файле XIB вы должны отредактировать свойство tag
каждой вкладки, чтобы 1-я вкладка имела тег = 100, 2-я - 200, 3-я - 300 и т. Д.
Затем в ViewController добавьте этот код:
UIViewController *selectedVC = [self.tabBarController.viewControllers objectAtIndex:self.tabBarController.selectedIndex];
int selectedItemTag = selectedVC.tabItem.tag;
Затем вы можете определить, что это за viewController, используя selectedItemTag
переменную. В этом случае вы можете определить selectedIndex, выполнив следующее: selectedIndex = (selectedItemTag-100)/100
.
Свойства tag
не изменены при настройке UITabBar, поэтому вы можете им доверять:)