0

我正在創建一個RecyclerView來顯示一些圖像和文本,然後用戶可以爲RecyclerView的行添加書籤。 RecyclerView的圖像在寬度上匹配父級,高度爲wrap_content。在點擊書籤時,適配器在RecyclerView中調用notifydataset。我的問題是,在調用notifydataset改變後,RecyclerView按照高度閃爍其圖像。動態高度Glide ImageView裏面RecyclerView在調用notifydatasetchanged時閃爍?

 @Override 
     public void onBindViewHolder(RecyclerView.ViewHolder holder, final int position) { 
      if (holder instanceof VHITEM) { 
       final VHITEM VHitem = (VHITEM) holder; 
       Glide.with(mContext) 
         .load(articleDataList.get(position).SourcePath) 
         .asBitmap() 
         .diskCacheStrategy(DiskCacheStrategy.ALL) 
         .placeholder(R.drawable.defaultimage) 
         .error(R.drawable.defaultimage) 
         .dontAnimate() 
         .into(VHitem.imageViewTagPic); 
      } 
     } 

OnButton點擊

VHItem.imageViewAddRemoveBookmark.setOnClickListener(new View.OnClickListener() { 
        @Override 
        public void onClick(View view) { 
    notifyDataSetChanged(); } 
    } 

RecyclerView配置

LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getActivity()); 
recyclerView.setLayoutManager(linearLayoutManager); 
+1

交聯:https://github.com/bumptech/glide/issues/嘗試了1599年 – TWiStErRob

回答

0

這不是因爲滑翔的,如果項數據改變調用notifyitemchanged(位置,有效載荷),然後覆蓋onBindViewHolder 3參數方法

1

嘗試使用此上RecyclerView限制的視圖閃爍。

RecyclerView.ItemAnimator animator = mRecycler.getItemAnimator(); 

if (animator instanceof SimpleItemAnimator) { 
    ((SimpleItemAnimator) animator).setSupportsChangeAnimations(false); 
} 
+0

,但它不是問題。 Glide在notifydataset上重新加載其圖片。如何避免此問題 –

+0

您能否使用代碼片段更新您的問題? – AndroidBeginner

相關問題