2013-05-20 8 views
0

Я хочу загрузить кучу изображений из Интернета, а затем показать их с помощью моего пользовательского PagerAdapter. Поэтому я могу скользить, чтобы просматривать все эти изображения.android с помощью ViewPager для показа изображений

Я определяю деятельность, названную как PhotoSlideActivity, которая простирается от FragmentActivity. В этой деятельности у меня есть свой собственный PagerAdapter. Ниже мой код:

private class PhotoSlidePagerAdapter extends FragmentStatePagerAdapter { 
     private final int mSize; 

     public PhotoSlidePagerAdapter(FragmentManager fm, int size) { 
      super(fm); 
      mSize = size; 
     } 

     @Override 
     public Fragment getItem(int position) { 
      PhotoUrl photoUrl = new PhotoUrl(position); 
      return PhotoSlidePageFragment.create(photoUrl.makePhotoUrl()); 
     } 

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

Следующая моя PhotoSlidePageFragment. mImageFetcher - это класс, который загружает изображения асинхронно.

public class PhotoSlidePageFragment extends Fragment { 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
     Bundle savedInstanceState) { 
     final View v = inflater.inflate(R.layout.fragment_photo_slide_page, container, false); 
     mImageView = (ImageView) v.findViewById(R.id.imageView1); 
    } 

    @Override 
    public void onActivityCreated(Bundle savedInstanceState) { 
     super.onActivityCreated(savedInstanceState); 

     // Use the parent activity to load the image asynchronously into the ImageView 
     if (PhotoSlideActivity.class.isInstance(getActivity())) { 
      mImageFetcher = ((PhotoSlideActivity) getActivity()).getImageFetcher(); 
      mImageFetcher.loadImage(mImageUrl, mImageView); 
     } 
    } 

(1) Моя первоначальная идея заключается в том, чтобы положить mImageFetcher.loadImage(mImageUrl, mImageView); в onCreateView. Есть ли разница между помещением его в onCreateView и в onActivityCreated?

(2) Что делать, если я заменил то, что я сделал в onActivityCreated, с mImageFetcher = new ImageFetcher(); mImageFetcher.loadImage(mImageUrl, mImageView);? Для этого используйте Fragment для загрузки изображения асинхронно. Есть ли какие-то плохие последствия?

ответ

Смежные вопросы