在另一个选项卡中刷新Android ListView的正确方法

时间:2012-07-27 01:51:55

标签: android listview android-fragments

基本上我有两个标签。片段和ListFragment。

在Fragment中,您可以将数据插入到数据库中,该数据库将直接在ListFragment选项卡中填充ListView。我希望能够滑动到ListFragment(插入新数据后)并使用ViewPager函数进行滑动时,我希望ListView能够刷新。

有没有正确的方法呢?我可以根据要求显示代码;但不确定要显示的代码。首先,这是我的View寻呼机设置:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.fragment_layout);

    mSectionsPagerAdapter = new SectionsPagerAdapter(
            getSupportFragmentManager());

    final ActionBar actionBar = getActionBar();
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
    actionBar.setDisplayHomeAsUpEnabled(true);

    mViewPager = (ViewPager) findViewById(R.id.viewpager);
    mViewPager.setAdapter(mSectionsPagerAdapter);

    mViewPager
            .setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {
                @Override
                public void onPageSelected(int position) {
                    actionBar.setSelectedNavigationItem(position);
                }
            });

    for (int i = 0; i < mSectionsPagerAdapter.getCount(); i++) {
        actionBar.addTab(actionBar.newTab()
                .setText(mSectionsPagerAdapter.getPageTitle(i))
                .setTabListener(this));
    }

}

请注意:这不是双窗格设置。

1 个答案:

答案 0 :(得分:2)

执行此操作的正确方法是让ListFragment实现LoaderManager.LoaderCallbacks<D>接口并初始化Loader以加载绑定到ListView的数据。

您可以阅读此blog post以详细了解Loader s。