繁体   English   中英

如何刷新片段“ onResume”?

[英]How to refresh fragments 'onResume?'

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

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

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

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

只需将这段代码放在里面

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();

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

我同意Mehul的观点,但是您也可以这样做。如果您要替换片段,可以说

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

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

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

//move your code from onViewCreated() here 

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM