fragment中嵌套fragment时,移除 subview有关问题

fragment中嵌套fragment时,移除 subview问题

问题描述:

坑爹的UI将drawerNavigation 和 TabHostFragment设计到了一起,在第一个抽屉中潜逃了一个 3个Tab。 

当从第一个抽屉跳转到第二个抽屉,再跳转回第一个抽屉时,就会出现异常,原因是,当我们从第一个抽屉调走的时候,第一个抽屉的那三个tab对应的fragment并没有被消除掉。所以出现了异常。


解决办法:

跳转的时候消除子fragment.

于是在第一个抽屉销毁时,将他的父视图中所有的子视图全部消除掉。

	@Override
	public void onDestroyView() {
		Log.e(TAG, "onDestroyView");
		super.onDestroyView();
//		((ViewGroup) mTabHost.getParent()).removeView(mTabHost);
//		((ViewGroup) mTabHost.getParent()).removeAllViewsInLayout();
//		((ViewGroup) mTabHost.getParent()).removeAllViews();
		
		if(mTabHost!=null){
			ViewGroup parenGroup = (ViewGroup) mTabHost.getParent();
			if(parenGroup!=null){
				parenGroup.removeAllViewsInLayout();
			}
		}
	}

OK,问题解决了