我知道有一些这样的问题,但它们似乎不起作用,因为它们完全删除了视图,这不是我想要的。
我有这个设计,一个双窗格,我有一个片段和一个片段布局。显示右侧的详细信息。见图片:
问题是,当我切换标签并返回“测量”标签时,右侧的片段不会自行清理。见图片:
右侧的信息在运行时以编程方式添加,一些LinearLayout用于Header,另一个LinearLayout用于详细信息,另一个LinearLayout用于滚动右侧详细信息时最后的按钮。
我尝试使用:
ViewGroup vg = (ViewGroup) FindViewById(Resource.Id.data_memory_details).Parent;
vg.RemoveView(FindViewById(Resource.Id.data_memory_details));
和
ViewGroup vg = (ViewGroup) FindViewById(Resource.Id.data_memory_details).Parent;
vg.RemoveAllViews()
但这不起作用,因为它完全删除右侧,下次加载左侧窗格时会填满整个屏幕宽度。
另一个小问题是,清洁内容的正确位置在哪里?我应该这样做OnPause()吗?当我更改标签并且测量活动进入OnPause时,我可以在那里清理吗?
答案 0 :(得分:1)
登录 -
@Override
public void onDetach() {
super.onDetach();
//write your logic here
}
答案 1 :(得分:0)
如果要清除片段中的数据, 转到包含该片段的活动并使用
getIntent().setFlags(Intent.FLAG_ACTIVITY_CLEAR_STACK);