У меня есть панель поиска материала, которую я использую для поиска в своей базе данных.Этот поиск возвращает значения, основанные на номере телефона. Когда я ищу номер телефона, который не существует в firebase, он не возвращает мне никакой ошибки, но всякий раз, когда я ищу номер телефона, который совпадает с номером телефона, который находится в firebase, я получаю следующую ошибку.справка по этому вопросу?
Ошибка
java.lang.NullPointerException: попытка вызвать виртуальный метод void android.widget.TextView.setText (java.lang.CharSequence) 'для нулевой ссылки на объект
Штрих-код поиска материала
public void onSearchConfirmed(CharSequence text) {
//when search finish
//Show result of search adapter
startSearch(text.toString());
}
код поиска
private void startSearch(String text) {
//create query by name
Query searchByName = requests.orderByChild("phone").equalTo(text);
//Create Options with query
FirebaseRecyclerOptions<Request> foodOptions = new FirebaseRecyclerOptions.Builder<Request>()
.setQuery(searchByName, Request.class)
.build();
Searchadapter = new FirebaseRecyclerAdapter<Request, OrderViewHolder>(foodOptions) {
@Override
protected void onBindViewHolder(@NonNull final OrderViewHolder viewHolder, final int position, @NonNull final Request model) {
viewHolder.txtOrderId.setText(Searchadapter.getRef(position).getKey());
viewHolder.txtOrderStatus.setText(convertCodeToStatus(model.getStatus()));
viewHolder.txtOrderPhone.setText(model.getPhone());
viewHolder.txtDateTime.setText(model.getDateTime());
}
@Override
public OrderViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View itemView = LayoutInflater.from(parent.getContext())
.inflate(R.layout.food_item, parent, false);
return new OrderViewHolder(itemView);
}
};
Searchadapter.startListening();
recyclerView.setAdapter(Searchadapter); //Set adapter for Recycler View
Огненная база