Sfoglia il codice sorgente

图片错乱与刷新体验

詹子聪 6 anni fa
parent
commit
380561b1a6

+ 1 - 4
app/src/main/java/com/miekir/eden/ui/home/coupon/TemplateAdapter.java

@@ -75,7 +75,6 @@ public class TemplateAdapter extends BaseQuickAdapter<String, BaseViewHolder> {
                         //iv_template.setScaleType(ImageView.ScaleType.CENTER_CROP);
                         //iv_template.setImageDrawable(resource);
                         if (resource == null) {
-                            setDefaultView(iv_template);
                             return;
                         }
 
@@ -85,9 +84,7 @@ public class TemplateAdapter extends BaseQuickAdapter<String, BaseViewHolder> {
                         } catch (Exception e) {
                             e.printStackTrace();
                         }
-                        if (TextUtils.isEmpty(coverUrl) || !TextUtils.equals(coverUrl, realUrl)) {
-                            setDefaultView(iv_template);
-                        } else {
+                        if (!TextUtils.isEmpty(coverUrl) && TextUtils.equals(coverUrl, realUrl)) {
                             int imageWidth = resource.getIntrinsicWidth();
                             int imageHeight = resource.getIntrinsicHeight();
                             // 减去间距

+ 1 - 4
app/src/main/java/com/miekir/eden/ui/home/goods/GoodsAdapter.java

@@ -112,7 +112,6 @@ public class GoodsAdapter extends BaseQuickAdapter<GoodsBean, BaseViewHolder> {
                     @Override
                     public void onResourceReady(Drawable resource, Transition<? super Drawable> transition) {
                         if (resource == null) {
-                            setDefaultView(aciv_goods);
                             return;
                         }
 
@@ -122,9 +121,7 @@ public class GoodsAdapter extends BaseQuickAdapter<GoodsBean, BaseViewHolder> {
                         } catch (Exception e) {
                             e.printStackTrace();
                         }
-                        if (TextUtils.isEmpty(coverUrl) || !TextUtils.equals(coverUrl, goodsBean.coverImageUrl)) {
-                            setDefaultView(aciv_goods);
-                        } else {
+                        if (!TextUtils.isEmpty(coverUrl) && TextUtils.equals(coverUrl, goodsBean.coverImageUrl)) {
                             aciv_goods.setScaleType(ImageView.ScaleType.CENTER_CROP);
                             aciv_goods.setImageDrawable(resource);
                         }

+ 11 - 2
app/src/main/java/com/miekir/eden/ui/home/goods/GoodsFragment.java

@@ -160,8 +160,10 @@ public class GoodsFragment extends BaseMVPFragment implements IGoodsView, ITopAc
             return;
         }
 
+        boolean hasClear = false;
         if (mCurrentPage == PAGE_START) {
             mGoodsList.clear();
+            hasClear = true;
             // 如果是下拉刷新获取的第0页数据,item不要自动滚动一段距离
             // 或者用这个mLayoutManager.scrollToPositionWithOffset(0, 0);
             if (mIsRefresh) {
@@ -169,12 +171,19 @@ public class GoodsFragment extends BaseMVPFragment implements IGoodsView, ITopAc
                 rv_goods.smoothScrollToPosition(0);
             }
         }
+
         if (goodsList != null) {
+            int start = mGoodsList.size();
             mGoodsList.addAll(goodsList);
+            if (!hasClear) {
+                mAdapter.notifyItemRangeInserted(start, goodsList.size());
+            } else {
+                mAdapter.notifyDataSetChanged();
+            }
+        } else {
+            mAdapter.notifyDataSetChanged();
         }
 
-        mAdapter.notifyDataSetChanged();
-
         // 请求到数据了,页数自增
         if (goodsList != null && goodsList.size() > 0) {
             mCurrentPage++;

+ 9 - 1
app/src/main/java/com/miekir/eden/ui/home/search/SearchActivity.java

@@ -184,10 +184,18 @@ public class SearchActivity extends BaseBeiActivity implements View.OnClickListe
         }
 
         if (goodsList != null) {
+            int start = mGoodsList.size();
             mGoodsList.addAll(goodsList);
+            if (!mIsRefresh) {
+                mAdapter.notifyItemRangeInserted(start, goodsList.size());
+            } else {
+                mAdapter.notifyDataSetChanged();
+            }
+        } else {
+            mAdapter.notifyDataSetChanged();
         }
 
-        mAdapter.notifyDataSetChanged();
+
 
         // 请求到数据了,页数自增
         if (goodsList != null && goodsList.size() > 0) {

+ 2 - 2
app/src/main/java/com/miekir/eden/ui/mine/fav/MyFavActivity.java

@@ -98,11 +98,11 @@ public class MyFavActivity extends BaseBeiActivity implements IMyFavView {
         }
 
         if (goodsList != null) {
+            int start = mGoodsList.size();
             mGoodsList.addAll(goodsList);
+            mAdapter.notifyItemRangeInserted(start, goodsList.size());
         }
 
-        mAdapter.notifyDataSetChanged();
-
         // 请求到数据了,页数自增
         if (goodsList != null && goodsList.size() > 0) {
             mCurrentPage++;