#java #android #firebase #firebase-realtime-database
#java #Android #firebase #firebase-база данных в реальном времени
Вопрос:
Кажется, я не могу найти ответ на проблему с текстом базы данных firebase. Я пытаюсь создать приложение для проверки. отправка данных проверки в базу данных не является проблемой, однако текстовые поля редактирования отображаются как .AppCompatEditText, пожалуйста, обратитесь к загруженному изображению.
это возвращает значение NULL в полях обзора.
мой фрагмент обзора держателя просмотра:
public void bindToReview(Review review, View.OnClickListener starClickListener) {
author.setText(String.valueOf(review.author);
categories.setText(review.categories);
buss_name.setText(String.valueOf(review.businessName).trim());
buss_address.setText(String.valueOf(review.addressData).trim());
location.setText(review.location);
district.setText(review.district);
reviewData.setText(String.valueOf(review.reviewData).trim());
date.setText(review.date);
likeCount.setText(String.valueOf(review.likeCount));
starsData.setRating(stars);
likes.setOnClickListener(starClickListener);
}
отправка данных в firebase:
public Review(String uid, String author, String categories, String location, String district,
String businessName, String reviewData, String addressData, float rating,
String priceS, String sd) {
this.uid = uid;
this.author = author;
this.categories = categories;
this.location = location;
this.district = district;
this.reviewData = reviewData;
this.businessName = businessName;
this.addressData = addressData;
this.rating = rating;
this.sd = sd;
this.priceS = priceS;
}
@Exclude
public Map<String, Object> toMap() {
HashMap<String, Object> result = new HashMap<>();
result.put("uid", uid);
result.put("author", author);
result.put("categories", categories);
result.put("location", location);
result.put("name", businessName);
result.put("address", addressData);
result.put("district", district);
result.put("date", sd);
result.put("body", reviewData);
result.put("stars", rating);
result.put("price", priceS);
result.put("likeCount", likeCount);
result.put("likes", likes);
return resu<
}
адаптер:
@Override
public void onBindViewHolder(@NonNull ReviewAdapter.ViewHolder holder, int position) {
holder.uid.setText(String.valueOf(reviewsList.get(position).uid));
holder.categories.setText(reviewsList.get(position).categories);
holder.author.setText(reviewsList.get(position).author);
holder.businessName.setText(String.valueOf(reviewsList.get(position).businessName));
holder.address.setText(String.valueOf(reviewsList.get(position).addressData));
holder.reviewData.setText(String.valueOf(reviewsList.get(position).reviewData));
holder.likes.setText(String.valueOf(reviewsList.get(position).likeCount));
holder.price.setText(String.valueOf(reviewsList.get(position).priceS));
holder.date.setText(reviewsList.get(position).sd);
holder.stars.setText(String.valueOf(reviewsList.get(position).rating));
final RequestOptions requestOptions = new RequestOptions();
requestOptions.placeholder(R.drawable.image_placeholder);
Glide.with(mContext).applyDefaultRequestOptions(requestOptions)
.load(reviewsList.get(position).review_image).into(holder.reviewImage);
}
в чем может быть проблема? спасибо за помощь!
Комментарии:
1. Можете ли вы показать нам, как вы устанавливаете эти данные в базе данных?
2. у меня там есть картинка, пожалуйста, взгляните.
3. Я это видел. Я спрашивал, как вы устанавливаете его программно.
4. Пожалуйста, укажите часть кода при отправке ваших данных в Firebase.
5. добавлены фрагменты кода … все еще получающие null в моих текстовых представлениях.
Ответ №1:
Заставил его работать с помощью простого EditText.getText().toString(); не String.valueOf(EditText) . не знаю, почему один работает, а другой нет.