Android片段刷新后退

时间:2016-08-17 13:29:02

标签: java android fragment refresh

我有一个应用程序在列表视图中显示数据库中的数据,当单击列表视图中的项目时,它会打开一个活动并显示有关该特定项目的更多数据,包括删除它的能力。当它删除它时,第一个片段被带出后栈,但是,列表视图不会更新以显示删除,如何从后栈中拉出片段时刷新它?

片段活动在onBackPressed

中有这个
@Override
    public void onBackPressed() {
        DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
        if (fragmentManager.getBackStackEntryCount() != 0) {
            fragmentManager.popBackStack();
        }
        else if (drawer.isDrawerOpen(GravityCompat.START)) {
            drawer.closeDrawer(GravityCompat.START);
        } else {
            super.onBackPressed();
        }
    }

2 个答案:

答案 0 :(得分:3)

更新列表视图适配器

{{1}}

答案 1 :(得分:0)

将此列表工具添加到您的活动中。

 getSupportFragmentManager().addOnBackStackChangedListener(getListener());

  private FragmentManager.OnBackStackChangedListener getListener() {
        FragmentManager.OnBackStackChangedListener result = new FragmentManager.OnBackStackChangedListener() {
            public void onBackStackChanged() {
                FragmentManager manager = getSupportFragmentManager();

                if (manager != null) {
                    manager.findFragmentById(R.id.mall_fragment_container).onResume();
                }
            }
        };

        return result;
    }

当在backstack中更改时,它将调用片段onresume。在你的片段中完成你的工作。注意不要忘记广告片段到backstack。

由于