如何清除片段的内容?

时间:2014-12-17 08:39:25

标签: android android-layout android-fragments

我知道有一些这样的问题,但它们似乎不起作用,因为它们完全删除了视图,这不是我想要的。

我有这个设计,一个双窗格,我有一个片段和一个片段布局。显示右侧的详细信息。见图片:enter image description here

问题是,当我切换标签并返回“测量”标签时,右侧的片段不会自行清理。见图片:enter image description here

右侧的信息在运行时以编程方式添加,一些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时,我可以在那里清理吗?

2 个答案:

答案 0 :(得分:1)

登录 -

@Override
public void onDetach() {
    super.onDetach();
   //write  your logic here
}

答案 1 :(得分:0)

如果要清除片段中的数据, 转到包含该片段的活动并使用

getIntent().setFlags(Intent.FLAG_ACTIVITY_CLEAR_STACK);