Skip to content
28 changes: 11 additions & 17 deletions nativescript-core/ui/bottom-navigation/bottom-navigation.ios.ts
Original file line number Diff line number Diff line change
Expand Up @@ -157,23 +157,6 @@ class UITabBarControllerDelegateImpl extends NSObject implements UITabBarControl

const owner = this._owner.get();
if (owner) {
if (tabBarController.viewControllers) {
const position = tabBarController.viewControllers.indexOfObject(viewController);
if (position !== NSNotFound) {
const prevPosition = owner.selectedIndex;
const tabStripItems = owner.tabStrip && owner.tabStrip.items;
if (tabStripItems) {
if (tabStripItems[position]) {
tabStripItems[position]._emit(TabStripItem.selectEvent);
}

if (tabStripItems[prevPosition]) {
tabStripItems[prevPosition]._emit(TabStripItem.unselectEvent);
}
}
}
}

owner._onViewControllerShown(viewController);
}

Expand Down Expand Up @@ -358,6 +341,17 @@ export class BottomNavigation extends TabNavigationBase {
newItem.loadView(newItem.content);
}

const tabStripItems = this.tabStrip && this.tabStrip.items;
if (tabStripItems) {
if (tabStripItems[newIndex]) {
tabStripItems[newIndex]._emit(TabStripItem.selectEvent);
}

if (tabStripItems[oldIndex]) {
tabStripItems[oldIndex]._emit(TabStripItem.unselectEvent);
}
}

super.onSelectedIndexChanged(oldIndex, newIndex);
}

Expand Down