0

我完全不知道为什么我的应用程序会发生接下来的事情:我有一个带有大约 20 个片段的 viewpager,2..20 个片段从 http 连接获取数据,我想将其与 AsyncTask 一起使用。进度条出现,http 连接建立,这些片段很好。但是,我必须对其他带有一些静态数据的片段,它们不需要连接,但是我在 FragmentActivity 中建立了连接,所以它也不应该对它们产生不同的影响。但不知何故,我得到了这两个片段,我得到了两个蓝页,因为整个片段由一个蓝色背景的布局组成。

AsynTask 部分:

public class BackgroundAsyncTask extends
    AsyncTask<Void, Integer, Void> {

        int myProgress;

        @Override
        protected void onPostExecute(Void result) {
            // TODO Auto-generated method stub

            pb.setVisibility(View.GONE);

                    pager.setAdapter( adapter );
        indicator.setViewPager( pager );

            pager.setAdapter(mPagerAdapter);
            pager.setCurrentItem(INITIAL_PAGE);
            pager.setOffscreenPageLimit(3);

        }

        @Override
        protected void onPreExecute() {
            // TODO Auto-generated method stub
            pb.setVisibility(View.VISIBLE);
        }

        @Override
        protected Void doInBackground(Void... params) {
        // TODO Auto-generated method stub
        //http post MYQUERY1 - this works like charm
        getData();
            return null;


}

 }

onCreate() 部分:

setContentView( R.layout.main );
context=this;
//bblablabla
pb = (ProgressBar)findViewById(R.id.progressbar);

//for viewpager
pager = (ViewPager)findViewById( R.id.viewpager );
adapter = new GoogleMusicAdapter(getSupportFragmentManager());
indicator = (TabPageIndicator)findViewById( R.id.indicator );


fragments.clear();
fragments.add( TabMyList1.class.getName());
fragments.add( TabMyList2.class.getName());   //these 2 are blue

fragments.add(TabListFromNet1.class.getName());
//.... these work
fragments.add(TabListFromNet18.class.getName());

mPagerAdapter = new PagerAdapter1(super.getSupportFragmentManager(), fragments);


new BackgroundAsyncTask().execute();

那么这怎么可能呢?我的片段不需要更多的工作,尤其是 2 个静态片段,为什么是蓝色的?非常感谢您,我现在正在努力解决这个问题。

4

0 回答 0