я не могу установить изображение в видоискателе в android - PullRequest
0 голосов
/ 22 апреля 2020

Я пытаюсь установить изображение в viewHolder imageview, я отправляю путь к изображению в адаптере, я не могу установить его, потому что я преобразовал в нулевое значение, я не могу преобразовать в путь к файлу в растровое изображение, пожалуйста, помогите мне.

    if(dataModel.getPhoto()!=null)
            {
                BitmapFactory.Options options = new BitmapFactory.Options();
                Bitmap bm = BitmapFactory.decodeFile(dataModel.getPhoto(), options);
                Log.e("decodefile",":"+bm);
                viewHolder.photo.setImageBitmap(bm);

            }

Ответы [ 2 ]

0 голосов
/ 22 апреля 2020

Вы не используете BitmapFactory.Options правильно Попробуйте это: -

public static Bitmap decodeBitmapFromFile(String filePath, int reqWidth,
        int reqHeight) {
    final BitmapFactory.Options options = new BitmapFactory.Options();
    options.inJustDecodeBounds = true;
    BitmapFactory.decodeFile(filePath, options);
    options.inSampleSize = calculateInSampleSize(options, reqWidth,
            reqHeight);
    options.inJustDecodeBounds = false;
    return BitmapFactory.decodeFile(filePath, options);
}

public static int calculateInSampleSize(BitmapFactory.Options options,
        int reqWidth, int reqHeight) {
    final int height = options.outHeight;
    final int width = options.outWidth;
    int inSampleSize = 1;
    if (height > reqHeight || width > reqWidth) {
        final int heightRatio = Math.round((float) height
                / (float) reqHeight);
        final int widthRatio = Math.round((float) width / (float) reqWidth);

        inSampleSize = heightRatio <= widthRatio ? heightRatio : widthRatio;
    }

    return inSampleSize;
}
0 голосов
/ 22 апреля 2020

Можете ли вы поделиться более подробной информацией?

Может быть, ваш путь неверен. Используете ли вы абсолютный путь из изображение ? Если вы не используете его, измените его на абсолютный путь .

...