2017-08-10 48 views
1

我想實現一個名爲GPUImageView的Android圖像過濾器庫。GPUImageView與Glide

我曾嘗試在下面的代碼,這樣使用它:

public static GPUImageView img_bg; 
img_bg = (GPUImageView) findViewById(R.id.img_bg); 
categoryAdapter1.setOnClickLIstner(new OnClickLIstner() { 
         @Override 
         public void onClick(View v, Image image, int pos) { 
          Glide.with(NameArt.this) 
            .load(image.getDrawableId()) 
            .centerCrop() 
            .dontAnimate() 
            .into(img_bg); 
          img_bg.setVisibility(View.VISIBLE); 
         } 
        }); 

但我得到一個錯誤:

cannot resolve method 'into' (jp.co.cyberagent.android.gpuimage.GPUImageView)

有誰知道如何解決這個問題?謝謝

+0

您正在加載非圖像,GPUImage未從imageView Class擴展。 '.into(* /這裏應該是圖片* /)' – Ibrahim

+0

@Ibrahim我從適配器加載圖片...請檢查.load。謝謝 – Priya

回答

0

GPUImageView不是ImageView的子類。寫一個自定義的子類com.bumptech.glide.request.target.Target,其優先於onResourceReady來致電GPUImageView::setImage(Bitmap)

+0

請注意,您可能還想告訴Glide,您希望它作爲位圖使用'asBitmap()'。 – cwbowron

+0

嗨!感謝您的建議。我已經開始學習java了......可以請你解釋一下你的答案嗎? – Priya

0

這將幫助你解決這個問題。

Glide.with(getApplicationContext()).load(IMAGE) 
      .asBitmap() 
      .into(new SimpleTarget<Bitmap>() { 
       @Override 
       public void onResourceReady(Bitmap resource, GlideAnimation<? super Bitmap> glideAnimation) { 
        BITMAP= resource; 
       } 
      }); 

並編譯下面的glide版本。

compile 'com.github.bumptech.glide:glide:3.7.0' 
+0

您好,感謝您的建議....我無法重新調用稱爲.asBitmap()的方法,您可以描述什麼是BITMAP =資源;謝謝 – Priya

+0

比你需要編譯其他版本的滑行 編譯'com.github.bumptech.glide:glide:3.7.0' –

+0

試試這段代碼 - @Priya –