如何从MainActivity更新FragmentPage的listView

时间:2017-03-01 10:54:08

标签: android listview android-fragments

在我的应用中,我创建了一个包含2个标签的标签式活动。我正在做的是,从工具栏菜单向我的数据库添加新数据。 我想知道的是如何更新位于我的第一个片段页面上的listView。 在我的第一个片段页面中,我已经有一个名为performServerQuery()的方法,它重置适配器并使用新数据填充我的适配器。 我能想到的是从我的mainActivity调用performServerQuery(),但它说无法在null对象引用上调用方法adapter.clear()。 有没有其他方法直接从我的mainactivity刷新我的片段页面中的ListView?

编辑:stackoverflow上有很多相同的问题,其中大多数是使用广播。我可以不发送广播吗?

1 个答案:

答案 0 :(得分:0)

在customAdapter中添加此行

 public int getItemPosition(Object object) {
    return POSITION_NONE;
}

并添加addOnPageChangeListener 看起来像这样

viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
        @Override
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

        }

        @Override
        public void onPageSelected(int position) {
            vpFrames.getAdapter().notifyDataSetChanged();
        }

        @Override
        public void onPageScrollStateChanged(int state) {

        }
    });