Picasso IllegalArgumentException Цель не должна быть нулевой: получить данные из Firebase

1

Я продолжаю иметь эту проблему в моем коде. Из приведенного ниже кода, я думаю, я уже проверил, является ли значение load() нулевым. Если он нулевой, код никогда не должен доходить до Пикассо.

Мое приложение позволяет пользователям оставлять комментарии или загружать фотографии на блюдо (например, визг). Тем не менее, они не обязаны размещать оба. Так что там могут быть данные есть только комментарий или фото. Так что я не уверен, что это то, что вызывает проблему.

Это база данных, откуда я хочу получить: https://ibb.co/ZNTSFb0

Чтобы немного объяснить мой код: проверьте, имеет ли dataSnapshot1 значение изображения;
если да, то проверьте, соответствует ли dishName этому блюду; если да, то поместите фотографию в imageView.

        mdatabaseReferece1 = FirebaseDatabase.getInstance().getReference("Post");
        mdatabaseReferece1.addValueEventListener(new ValueEventListener() {
            @Override
                for (DataSnapshot dataSnapshot1 : dataSnapshot.getChildren()){
                    if (dataSnapshot1.child("image").getValue()!=null){
                        if (dataSnapshot1.child("dishName").getValue().toString().equals(newDish)) {
                            ImageView imageView = findViewById(R.id.gallery_photo);
                            Picasso.get().load(dataSnapshot1.child("image").getValue().toString()).into(imageView);
                            gallery.addView(view);}
                    }
                }

            }

Мне не нужно использовать Пикассо, если есть какой-то другой более простой способ. Все, что я хочу иметь в своем приложении, это список совпавших фотографий, извлеченных из базы данных.

Теги:
firebase
android-studio
picasso
firebase-realtime-database

1 ответ

0

Измените следующее:

if(dataSnapshot1.child("image").getValue()!=null)

В это:

if(dataSnapshot1.hasChild("image")){ /* code */ }

Из документов:

hasChild(String path) Может использоваться, чтобы определить, есть ли у этого DataSnapshot данные в определенном местоположении

  • 0
    Привет, спасибо за ваш ответ. Я попытался "hasChild (String path)", он все еще не работает и имеет ту же ошибку.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню