使用glide 時候在listview 或者 grideview 中圖片自動拉伸問題

        這篇文章是我轉載別人的。 不過原地址我忘記了 只記得解決問題的方法了~ 

    我要加載圖片的地方是輪播圖, 輪播圖中已加入動畫效果,用glide 加載圖片時候 因爲glide 加載圖片有一個淡入淡出的動畫效果 兩個效果貌似有衝突 出現了圖片拉伸問題

  解決方法:

  RequestManager manager = Glide.with(mContext);
        DrawableTypeRequest request = null;
        //"http://file2.bbtree.com/group2/M01/1F/61/Cqgv5FZNpUiAXJU7AAEqHsjzFIM015.jpg"
//        mUrl = "http://file2.bbtree.com/group2/M01/1F/61/Cqgv5FZNpUiAXJU7AAEqHsjzFIM015.jpg";
        if (mUrl != null) {
            request = manager.load(mUrl);
        } else if (mFile != null) {
            request = manager.load(mFile);
        } else if (mRes != 0) {
            request = manager.load(mRes);
        } else {
        }

        request.placeholder(getEmpty()).error(getError())<strong>.<span style="color:#ff0000;">dontAnimate()</span></strong><span style="color:#ff0000;">.</span>listener(new RequestListener() {
            @Override
            public boolean onException(Exception e, Object model, Target target, boolean isFirstResource) {
                LOG.d("BaseSliderView", ">>> onError");
                //只有onError 會報 oom 暫時註銷
                //作用在加載失敗時候 在列表中刪除該對象!
                if (mLoadListener != null) {
                    mLoadListener.onEnd(false, me);
                }
                if (v.findViewById(R.id.loading_bar) != null) {
                    v.findViewById(R.id.loading_bar).setVisibility(View.INVISIBLE);
                }
                return false;
            }

            @Override
            public boolean onResourceReady(Object resource, Object model, Target target, boolean isFromMemoryCache, boolean isFirstResource) {
                if (v.findViewById(R.id.loading_bar) != null) {
                    v.findViewById(R.id.loading_bar).setVisibility(View.INVISIBLE);
                }
                return false;
            }
        }).into(targetImageView);

紅色字體部分 加入dontAnimate()去掉 glide 的動畫效果 
 然後你再試試

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章