Glide и проблема с GPUImageView

Я пытаюсь реализовать библиотеку фильтров изображений Android под названием GPUImage, расположенную здесь.

Я пытался использовать его, как показано ниже

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 еще. Дайте мне знать, если какой-либо эксперт может помочь мне решить проблему. Спасибо

2 ответа

Убедитесь, что вы используете правильную версию Glide, с которой может справиться ваш GPUImageView. В недавнем выпуске 4 внесены изменения API, которые не имеют обратной совместимости, и поскольку используемая вами библиотека выглядит немного ржавой и не устанавливает должным образом зависимости, вы получили конфликт. Принудите v3 Glide или удалите устаревшую библиотеку.

попробуйте это загрузить изображение в ваш 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);
}
}

я надеюсь, что это будет работать в вашем случае

Другие вопросы по тегам