12

こんにちは、いくつかのページ (フラグメント状態ページャーを使用) を持つビューページャーと、それらのページの背景としていくつかの png があります。私はすでに Ui でのビットマップの表示 ( http://developer.android.com/training/displaying-bitmaps/display-bitmap.html ) に従っているので、バックグラウンド スレッドで描画可能な画像を既にキャッシュして設定しています。しかし、ページャーのページを切り替えると、まだラグが発生します。各フラグメントでは、 onCreateView() メソッドでビューを膨らませるだけなので、この遅延の原因はわかりません。この遅延/途切れの影響を取り除くにはどうすればよいですか?

4

11 に答える 11

1

ページを切り替えるときにこの遅延を回避するための私の解決策は、次のとおりです。

final Drawable[] images = new Drawable[3];
for(int i=0; i<3; i++){
    int position = i+1;
    images[i] = getResources().getDrawable(getResources().getIdentifier("image"+position, "drawable", getPackageName()));
 }

その後:

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

        }

        @Override
        public void onPageSelected(int position) {
            imageSwitcher.setImageDrawable(images[position]);
        }

        @Override
        public void onPageScrollStateChanged(int state) {
        }
    });
于 2015-06-20T21:23:29.263 に答える