使用OnClickListener的onPageSelected方法在fragmnet之间滑动时无法刷新我的listview

使用OnClickListener的onPageSelected方法在fragmnet之间滑动时无法刷新我的listview,listview,nullpointerexception,android-viewpager,swipe,Listview,Nullpointerexception,Android Viewpager,Swipe,我正在尝试更新listview,在Fragmnet之间滑动时从数据库中获取片段中的数据。我使用了OnPageChangeListener的onPageSelected()方法 public class TabsViewPagerFragmentActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(save

我正在尝试更新listview,在Fragmnet之间滑动时从数据库中获取片段中的数据。我使用了OnPageChangeListener的onPageSelected()方法

public  class TabsViewPagerFragmentActivity extends AppCompatActivity {


@Override


protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    // Setting the OnPageChangeListener For the Sliding Tabs

    tabs.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
        @Override
      public void onPageScrolled(final int i, final float v, final int i2) {                     
        }
        @Override
        public void onPageSelected(final int i) {
            if(i==0)
            { TabFragment tab=new TabFragment();
                tab.fragmentBecameVisible();
            }

        }
        @Override
        public void onPageScrollStateChanged(final int i) {
        }
      });


}}
而fragmentBecameVisible()是由以下名为

  public class Tab2Fragment extends Fragment implements FragmentInterface {

                                 @Nullable
                            @Override
     public View onCreateView() {
                View v= inflater.inflate(R.layout.chat_tab,container,false);
               ///The Code Above fetching data from database
                ///Loading listView in Class using AsyncTask
                 loadContact.execute();    
                 return v;

                        }

                     @Override
                 public void fragmentBecameVisible() {
          listView = (ListView) getActivity().findViewById(R.id.recentList);
                ((BaseAdapter)listView.getAdapter()).notifyDataSetChanged();
                    }
                         }
我在fragmentBecameVisible()中遇到了NullPointerException,我不知道如何解决这个问题,除了使用以下解决方案之外

@Override
public void setUserVisibleHint(boolean visible) {
    super.setUserVisibleHint(visible);
    if (visible && isResumed()) {
        //this gets call before onCreatView 
        onResume();
    }
}

@Override
public void onResume() {
    super.onResume();
    if (!getUserVisibleHint()) {
        return;
    }
    listView = (ListView) getActivity().findViewById(R.id.recentList);
    ((BaseAdapter) listView.getAdapter()).notifyDataSetChanged();
}
我花了几天时间研究这个问题。找人帮忙