mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-08-16 11:42:04 +08:00
Added _removeTabs implementation in common.
This commit is contained in:
@ -150,7 +150,21 @@ export class TabView extends view.View implements definition.TabView, view.AddAr
|
|||||||
}
|
}
|
||||||
|
|
||||||
public _removeTabs(oldItems: Array<definition.TabViewItem>) {
|
public _removeTabs(oldItems: Array<definition.TabViewItem>) {
|
||||||
//
|
var i: number;
|
||||||
|
var length = oldItems.length;
|
||||||
|
var oldItem: definition.TabViewItem;
|
||||||
|
for (i = 0; i < length; i++) {
|
||||||
|
oldItem = oldItems[i];
|
||||||
|
|
||||||
|
if (!oldItem) {
|
||||||
|
throw new Error("TabViewItem at index " + i + " is undefined.");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!oldItem.view) {
|
||||||
|
throw new Error("TabViewItem at index " + i + " does not have a view.");
|
||||||
|
}
|
||||||
|
this._removeView(oldItem.view);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public _addTabs(newItems: Array<definition.TabViewItem>) {
|
public _addTabs(newItems: Array<definition.TabViewItem>) {
|
||||||
|
@ -225,8 +225,11 @@ export class TabView extends common.TabView {
|
|||||||
|
|
||||||
if (data.oldValue) {
|
if (data.oldValue) {
|
||||||
var oldItems: Array<TabViewItem> = data.oldValue;
|
var oldItems: Array<TabViewItem> = data.oldValue;
|
||||||
oldItems.forEach((oldItem) => { oldItem._parent = null; });
|
oldItems.forEach((oldItem) => {
|
||||||
|
// _removeView is called within destroyItem method
|
||||||
|
oldItem._parent = null;
|
||||||
|
});
|
||||||
|
|
||||||
this._viewPager.setAdapter(null);
|
this._viewPager.setAdapter(null);
|
||||||
this._pagerAdapter = null;
|
this._pagerAdapter = null;
|
||||||
this._tabLayout.setItems(null, null);
|
this._tabLayout.setItems(null, null);
|
||||||
|
@ -173,7 +173,6 @@ export class TabView extends common.TabView {
|
|||||||
oldItem = <TabViewItem>oldItems[i];
|
oldItem = <TabViewItem>oldItems[i];
|
||||||
oldItem._parent = null;
|
oldItem._parent = null;
|
||||||
oldItem._controller = null;
|
oldItem._controller = null;
|
||||||
this._removeView(oldItem.view);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
this._ios.viewControllers = null;
|
this._ios.viewControllers = null;
|
||||||
|
Reference in New Issue
Block a user