如何刷新片段'onResume?'

时间:2013-12-15 18:42:00

标签: java android eclipse

我想刷新Actvitiy中的片段。 (我们称之为活动A) 活动A包含片段。

当我完成活动B时,活动A应刷新碎片。

我以为这会在onResume上完成?我尝试通过意图重新启动活动,但这不是可用性友好的。

那么当我恢复活动时如何刷新片段?

3 个答案:

答案 0 :(得分:11)

将此代码放入

  

的onResume()

例如,当您返回到您的频段时,您想要更新列表视图。

@Override
public void onResume() {
    super.onResume();
    if (allowRefresh)
    {
        allowRefresh = false;
        lst_applist = db.load_apps();
        getFragmentManager().beginTransaction().detach(this).attach(this).commit();
    }
}

这里 getFragmentManager()。beginTransaction()。detach(this).attach(this).commit();

此行分离并重新附加片段,以便更新您的内容。

答案 1 :(得分:0)

我同意Mehul但你也可以这样做。如果你想替换你的片段你可以说

@Override
public void onResume() {
    super.onResume();
    if (allowRefresh)
    {
        allowRefresh = false;
        lst_applist = db.load_apps();
        getFragmentManager().beginTransaction().replace(Fragment_Container,fragment).commit();
    }
}

答案 2 :(得分:0)

总是在显示片段之前调用onResume()。即使是第一次创建片段。因此,您只需将您的帐户从onViewCreated()移至onResume

@Override
public void onResume() {
super.onResume();

//move your code from onViewCreated() here 

}