Skip to content

Commit 23b25b9

Browse files
committed
fix(tabs): ensure we return the correct fragment manager
1 parent d0b273c commit 23b25b9

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

src/core-tabs/tab-content-item/index.android.ts

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,4 +36,22 @@ export class TabContentItem extends TabContentItemBase {
3636
super.disposeNativeView();
3737
(this as TabContentItemDefinition).canBeLoaded = false;
3838
}
39+
40+
_getChildFragmentManager() {
41+
const tabView = this.parent as View;
42+
let tabFragment = null;
43+
const fragmentManager = tabView._getFragmentManager();
44+
const fragments = fragmentManager.getFragments().toArray();
45+
for (let i = 0; i < fragments.length; i++) {
46+
// ensure index AND owner for when 2 tabviews are in the same page
47+
if (fragments[i].index === this.index && fragments[i].owner === tabView) {
48+
tabFragment = fragments[i];
49+
break;
50+
}
51+
}
52+
if (!tabFragment) {
53+
return fragmentManager;
54+
}
55+
return tabFragment.getChildFragmentManager();
56+
}
3957
}

0 commit comments

Comments
 (0)