我想知道是否有機制在使用Universal Image Loader加載時顯示旋轉的「不確定」ProgressBar來代替圖像。使用Universal Image Loader加載圖像時顯示不確定的ProgressBar
現在,我正在使用DisplayImageOptions中的showStubImage()選項在圖像下載時顯示「無圖像」的圖像,但如果在頂部有旋轉的不確定ProgressBar,圖像正在下載時ImageView的圖像。
我想知道是否有機制在使用Universal Image Loader加載時顯示旋轉的「不確定」ProgressBar來代替圖像。使用Universal Image Loader加載圖像時顯示不確定的ProgressBar
現在,我正在使用DisplayImageOptions中的showStubImage()選項在圖像下載時顯示「無圖像」的圖像,但如果在頂部有旋轉的不確定ProgressBar,圖像正在下載時ImageView的圖像。
final View imageLayout = inflater.inflate(R.layout.item_pager_image, null);
final ImageView imageView = ...
final ProgressBar spinner = ...
imageLoader.displayImage(images[position], imageView, options, new SimpleImageLoadingListener() {
@Override
public void onLoadingStarted(String imageUri, View view) {
spinner.setVisibility(View.VISIBLE);
}
@Override
public void onLoadingFailed(String imageUri, View view, FailReason failReason) {
spinner.setVisibility(View.GONE);
}
@Override
public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) {
spinner.setVisibility(View.GONE);
}
});
我張貼電網適配器類的代碼,我用從網上下載圖像。您必須聲明一個網格佈局,其中一個網格佈局爲imageview
,另外兩個網格佈局爲textviews
。將字符串數組傳遞給適配器。
@Override
public View getView(final int position, View convertView, ViewGroup parent)
{
// TODO Auto-generated method stub
LayoutInflater inflater = (LayoutInflater) parent.getContext().getSystemService(activity.LAYOUT_INFLATER_SERVICE);
//LayoutInflater inflator = activity.getLayoutInflater();
if(convertView==null)
{
view = new ViewHolder();
convertView = inflater.inflate(R.layout.grid_layout, null);
view.txtViewTitle = (TextView) convertView.findViewById(R.id.title);
view.txtViewSubTitle = (TextView) convertView.findViewById(R.id.subTitle);
view.imgViewFlag = (ImageView) convertView.findViewById(R.id.imageView1);
convertView.setTag(view);
}
else
{
view = (ViewHolder) convertView.getTag();
}
view.txtViewTitle.setText(listTitle.get(position));
view.txtViewSubTitle.setText(listSubTitle.get(position));
//For Picasso
/* Picasso.with(parent.getContext())
.load("http://www.radioarpan.com/upload_images/138630281911.jpg")
.placeholder(R.mipmap.paceholder)
.error(R.mipmap.error_page_logo)
.noFade().resize(125,165)
.centerCrop()
.into(view.imgViewFlag);*/
ImageLoader imageLoader = ImageLoader.getInstance();
DisplayImageOptions.Builder options = new DisplayImageOptions.Builder().cacheInMemory(true)
.cacheOnDisc(true).resetViewBeforeLoading(true)
.showImageForEmptyUri(R.mipmap.paceholder)
.showImageOnFail(R.mipmap.error_page_logo);
final ProgressBar spinner = new ProgressBar(activity, null, android.R.attr.progressBarStyleSmall);
//download and display image from url
imageLoader.displayImage("http://www.radioarpan.com/upload_images/138630281911.jpg", view.imgViewFlag,new SimpleImageLoadingListener()
{
@Override
public void onLoadingStarted(String imageUri, View view)
{
spinner.setVisibility(View.VISIBLE);
}
@Override
public void onLoadingFailed(String imageUri, View view, FailReason failReason)
{
spinner.setVisibility(View.GONE);
}
@Override
public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage)
{
spinner.setVisibility(View.GONE);
}
});
我沒有得到如何在這裏適當放置代碼。對不起,最後的帖子格式 –
看起來不錯,謝謝你的快速回答! – DiscDev
謝謝。我沒有使用它,但它給了我使用ActionBar ProgressBar的想法:) –
@NOSTRA鏈接是404 –