ViewPager
Androidでプログレスバーを追加するにはどうすればよいですか?
私のシナリオは、imageURL をViewPager
. ユーザーがページャーをスワイプしたときに、ImageURL が読み込まれていない場合は、進行状況バー/読み込み中の GIF 画像を表示する必要があります。
出来ますか?
ViewPager
Androidでプログレスバーを追加するにはどうすればよいですか?
私のシナリオは、imageURL をViewPager
. ユーザーがページャーをスワイプしたときに、ImageURL が読み込まれていない場合は、進行状況バー/読み込み中の GIF 画像を表示する必要があります。
出来ますか?
サティアは次のようなことを考えていたと思います。ビューページャー アダプター クラスには、次のメソッドが必要です。
@Override
public Object instantiateItem(View collection, final int position) {
LayoutInflater inflater = (LayoutInflater) collection.getContext()
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
final FrameLayout imageLayout = (FrameLayout) inflater.inflate(R.layout.fotopager_buttons, null);
final ImageView imageView = (ImageView) imageLayout.findViewById(R.id.image);
final ProgressBar spinner = (ProgressBar) imageLayout.findViewById(R.id.loading);
imageLoader.displayImage(Gallery.get_big_image_url(position), imageView, options, new ImageLoadingListener() {
@Override
public void onLoadingStarted() {
spinner.setVisibility(View.VISIBLE);
}
@Override
public void onLoadingFailed() {
spinner.setVisibility(View.GONE);
imageView.setImageResource(android.R.drawable.ic_delete);
}
@Override
public void onLoadingComplete() {
spinner.setVisibility(View.GONE);
}
});
views.put(position, iv);
((ViewPager) collection).addView(imageLayout,0);
return imageLayout;
}
そして、そのような R.layout.fotopager_buttons.xml :
<?xml version="1.0" encoding="utf-8"?>
<ImageView
android:id="@+id/image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:adjustViewBounds="true" />
<ProgressBar
android:id="@+id/loading"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"/>
imageLoader クラスの残りの部分は、https ://github.com/nostra13/Android-Universal-Image-Loader/blob/master/UniversalImageLoaderExample/src/com/nostra13/example/universalimageloader/ImagePagerActivity.java で確認できます。
ビューページャーと結び付けるのではなく、独自のビューでそれを処理しようとすることができます。