2

我在ListView中使用通用圖像加載程序,它在第一次完美運行,但剩下的時間,圖像沒有圓角。只有當我滾動圖像再次具有圓形邊框。通用圖像加載程序僅在滾動時舍入圖像

這是我的代碼:

ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(
      context).threadPriority(Thread.NORM_PRIORITY - 2) 
      .denyCacheImageMultipleSizesInMemory() 
      .discCacheFileNameGenerator(new Md5FileNameGenerator()) 
      .tasksProcessingOrder(QueueProcessingType.LIFO).enableLogging() 
      .build(); 
    // Initialize ImageLoader with configuration. 
    ImageLoader.getInstance().init(config); 


DisplayImageOptions options = new DisplayImageOptions.Builder() 
    .displayer(new RoundedBitmapDisplayer(50)) 
    .showStubImage(R.drawable.ic_app) 
    .showImageForEmptyUri(R.drawable.camera) 
    .showImageOnFail(R.drawable.ic_error).cacheInMemory().cacheOnDisc() 
    .build(); 


public View getView(int position, View convertView, ViewGroup parent) { 
    if (convertView == null) { 
     convertView = LayoutInflater.from(getContext()).inflate(R.layout.listmessages_row, null); 
    }//End if 


    ImageView avatar = (ImageView) convertView.findViewById(R.id.ImageView_MessageRow); 
    ImageView avatarEmpty = (ImageView) convertView.findViewById(R.id.ImageView_PhotoProfileEmpty); 
    final int positionAux = position; 

    if (listItems.get(position).avatar.equals("no_avatar")){ 
     avatarEmpty.setVisibility(View.VISIBLE); 
     avatar.setVisibility(View.GONE); 
    }else{ 
     avatarEmpty.setVisibility(View.GONE); 
     avatar.setVisibility(View.VISIBLE); 
     imageLoader.displayImage(IMAGES + listItems.get(position).avatar, avatar, options); 
    }//End if-else 

    return convertView; 
}//End getView 

回答

14

我回答myserlf,我修改displayImageOtions的選擇和它完美的作品所有的時間。我只是刪除了這條線:cacheInMemory()

現在我的顯示圖像的選項有:

options = new DisplayImageOptions.Builder() 
     .displayer(new RoundedBitmapDisplayer(50)) 
     .showStubImage(R.drawable.ic_app) 
     .showImageForEmptyUri(R.drawable.camera) 
     .showImageOnFail(R.drawable.ic_error) 
     .cacheOnDisc() 
     .build(); 
+0

哦~~我怎麼會錯過謂。無論如何thnkx +1 – bynu022

+0

哇...非常好的答案,+ 1 – AnilPatel

相關問題