mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-08-15 19:26:42 +08:00
fix(tabs-android): wrong tabStripItem selected (#7522)
This commit is contained in:

committed by
GitHub

parent
16924f4112
commit
ca22ba9391
@ -383,7 +383,11 @@ public class TabLayout extends HorizontalScrollView {
|
|||||||
}
|
}
|
||||||
|
|
||||||
int prevPosition = mTabStrip.getSelectedPosition();
|
int prevPosition = mTabStrip.getSelectedPosition();
|
||||||
onSelectedPositionChange(position, prevPosition);
|
|
||||||
|
if (prevPosition != position) {
|
||||||
|
onSelectedPositionChange(position, prevPosition);
|
||||||
|
}
|
||||||
|
|
||||||
mTabStrip.onViewPagerPageChanged(position, positionOffset);
|
mTabStrip.onViewPagerPageChanged(position, positionOffset);
|
||||||
|
|
||||||
View selectedTitle = mTabStrip.getChildAt(position);
|
View selectedTitle = mTabStrip.getChildAt(position);
|
||||||
|
@ -248,18 +248,14 @@ function initializeNativeClasses() {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (position !== prevPosition) {
|
const tabStripItems = owner.tabStrip && owner.tabStrip.items;
|
||||||
const tabStripItems = owner.tabStrip && owner.tabStrip.items;
|
|
||||||
|
|
||||||
if (position >= 0 && tabStripItems && tabStripItems[position]) {
|
if (position >= 0 && tabStripItems && tabStripItems[position]) {
|
||||||
tabStripItems[position]._emit(TabStripItem.selectEvent);
|
tabStripItems[position]._emit(TabStripItem.selectEvent);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (prevPosition >= 0 && tabStripItems && tabStripItems[prevPosition]) {
|
if (prevPosition >= 0 && tabStripItems && tabStripItems[prevPosition]) {
|
||||||
tabStripItems[prevPosition]._emit(TabStripItem.unselectEvent);
|
tabStripItems[prevPosition]._emit(TabStripItem.unselectEvent);
|
||||||
}
|
|
||||||
|
|
||||||
owner.selectedIndex = position;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user