1

我正在尝试实现一个名为 GPUImage 的 Android 图像过滤器库,位于此处。

我试过像下面这样使用它

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)

我无法解决它,因为我还在学习 android 和 java。让我知道这里是否有任何专家可以帮助我解决问题。谢谢

4

2 回答 2

0

试试这个在你的 GPUImage 中加载图像

 new DownloadImage(img_bg).execute(url);

创建一个异步任务

public class DownloadImage extends AsyncTask<String, Void, Bitmap> {
GPUImageView  bmImage;

public DownloadImage(GPUImageView  bmImage) {
    this.bmImage = (GPUImageView  ) bmImage;
}

protected Bitmap doInBackground(String... urls) {
    String urldisplay = urls[0];
    Bitmap mIcon11 = null;
    try {
        InputStream in = new java.net.URL(urldisplay).openStream();
        mIcon11 = BitmapFactory.decodeStream(in);
    } catch (Exception e) {
        Log.d("Error", e.getStackTrace().toString());

    }
    return mIcon11;
}

protected void onPostExecute(Bitmap result) {
    bmImage.setImageBitmap(result);
}
}

我希望它适用于你的情况

于 2017-08-18T05:33:44.917 回答
0

确保您使用 GPUImageView 可以处理的正确版本的 Glide。最近的 v4 带来了不向后兼容的 API 更改,并且由于您使用的这个库看起来有点生疏并且没有正确设置依赖项,所以您遇到了冲突。强制执行 Glide v3,或删除过时的库。

于 2017-08-11T14:47:26.577 回答