Как отобразить изображение по умолчанию в ImageView элемента RecyclerView? - PullRequest
0 голосов
/ 12 декабря 2018

В моем приложении для Android Захваченное изображение вместе с его данными сохраняется и отображается в представлении переработчика.Детали - это название и описание картины.Я сохраняю детали вместе с путем хранения (mCurrentpath) захваченного изображения в таблице базы данных комнаты.Я могу извлечь каждую строку базы данных и отобразить ее в элементе переработчика.Проблема в том, что если я пытаюсь сохранить только детали без какого-либо изображения, элемент отображает пустое изображение вместе с деталями.Вместо отображения пустого представления изображения мне нужно отобразить изображение по умолчанию. Пожалуйста, помогите Примечание: я также попытался сохранить строку по умолчанию в базе данных, если изображение не захвачено.и проверил с помощью оператора if () в onBindViewHolder

@Override
    public void onBindViewHolder(@NonNull ImageHolder imageHolder, int i) {
        ImageEntry currentImageEntry = imageEntries.get(i);
        String storedAddress = currentImageEntry.getImageStoredAddress();

          if(storedAddress != "Address is null") {
            imageHolder.imageView.setImageBitmap(BitmapFactory.decodeFile(currentImageEntry.getImageStoredAddress()));
        }else {imageHolder.imageView.setImageResource(R.drawable.default_image);}


        imageHolder.textViewTpye.setText(currentImageEntry.getPropertyType());
        imageHolder.textViewDesc.setText(currentImageEntry.getProprtyDescription());
    }

спасибо

Ответы [ 2 ]

0 голосов
/ 12 декабря 2018

используйте equals для значения строки comapring

if (storedAddress.equals("Address is null")) { 
    imageHolder.imageView.setImageResource(R.drawable.default_image);
} else {
    imageHolder.imageView.setImageBitmap(BitmapFactory.decodeFile(currentImageEntry.getImageStoredAddress()));
}

Примечание: == проверяет ссылки на объекты, .equals() проверяет значения строки.

Например,

String a="test me";
String b="test me";

a == b //this will return false

a.equals(b) //this will return true
0 голосов
/ 12 декабря 2018

Просто поместите изображение по умолчанию в файл XML и измените это изображение , если

if(storedAddress != "Address is null")

или Если изображение не захвачено, сохраните адрес изображения по умолчанию в базе данных.

...