Android ViewPager未更新

Android ViewPager未更新,android,android-viewpager,Android,Android Viewpager,我有一个ViewPager页面和选项卡。在AsyncTask中,我加载数据并更新ViewPager,但没有任何更改。在我检查过的LogCat中,我需要数据 MainClass.java mViewPager = (ViewPager) findViewById(R.id.cinema_view_pager); mTabPager = new TabPager("Загрузка"); mViewPager.setAdapter(mTabPager); LoadC

我有一个
ViewPager
页面和
选项卡
。在
AsyncTask
中,我加载数据并更新
ViewPager
,但没有任何更改。在我检查过的LogCat中,我需要数据

MainClass.java

    mViewPager = (ViewPager) findViewById(R.id.cinema_view_pager);
    mTabPager = new TabPager("Загрузка");
    mViewPager.setAdapter(mTabPager);

    LoadCinema cinema = new LoadCinema(this,0);
    cinema.execute();
TabPager(适配器)。类

public class TabPager extends PagerAdapter{

    private String message = "";

    public TabPager(String msg){
        message = msg;
    }

    @Override
    public int getCount() {
        return 1;
    }

    @Override
    public boolean isViewFromObject(View view, Object object) {
        return view.equals(object);
    }

    public void update(String msg){
        message = msg;
        notifyDataSetChanged();
    }

    @Override
    public View instantiateItem(View container, int position){
        View v = getLayoutInflater().inflate(R.layout.cinema_layout, null);

        TextView text = (TextView) v.findViewById(R.id.textView1);
        text.setText(message+"Message" +"");

        ((ViewPager) container).addView(v);
        return v;           
    }

    public void destroyItem(View container, int position, Object object) {
        ((ViewPager) container).removeView((View) object);
    }

}  
public void onPostExecute(List<CinemaCategory> result){
    super.onPostExecute(result);
    CinemaCategory cat = result.get(page);  
    cinema.mTabPager.update(cat.getDescription());
}
LoadCinema.class

public class TabPager extends PagerAdapter{

    private String message = "";

    public TabPager(String msg){
        message = msg;
    }

    @Override
    public int getCount() {
        return 1;
    }

    @Override
    public boolean isViewFromObject(View view, Object object) {
        return view.equals(object);
    }

    public void update(String msg){
        message = msg;
        notifyDataSetChanged();
    }

    @Override
    public View instantiateItem(View container, int position){
        View v = getLayoutInflater().inflate(R.layout.cinema_layout, null);

        TextView text = (TextView) v.findViewById(R.id.textView1);
        text.setText(message+"Message" +"");

        ((ViewPager) container).addView(v);
        return v;           
    }

    public void destroyItem(View container, int position, Object object) {
        ((ViewPager) container).removeView((View) object);
    }

}  
public void onPostExecute(List<CinemaCategory> result){
    super.onPostExecute(result);
    CinemaCategory cat = result.get(page);  
    cinema.mTabPager.update(cat.getDescription());
}
public void onPostExecute(列表结果){
super.onPostExecute(结果);
CinemaCategory cat=result.get(第页);
cinema.mtabpage.update(cat.getDescription());
}

我尝试了三页,当我切换到最后一页时,我有了数据,然后切换到第一页查看页面更新。现在我有了答案,谢谢

要添加适配器,需要添加此代码

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

考虑使用
FragmentStatePagerAdapter
而不是
PagerAdapter

public class TabPager extends FragmentStatePagerAdapter {

...

}

发布“mTabPager”的源刷新viewpagers数据时,前两个viewpagers未刷新,其他viewpagers数据正在更改。请帮帮我。