У меня есть просмотрщик, который содержит вид карты, мои данные хранятся в хэш-карте, но только последний элемент отображается в обзоре, как показано на прикрепленном изображении. Когда я передаю список, кажется, что все работает, если я удаляю forl oop и помещаю вместо него .get (position).
package www.atralk.co.atralk;
import android.app.DatePickerDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.text.format.DateFormat;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.ArrayAdapter;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AlertDialog;
import androidx.recyclerview.widget.RecyclerView;
import com.firebase.geofire.GeoFire;
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import java.io.UnsupportedEncodingException;
import java.util.Arrays;
import java.util.Calendar;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
import java.util.Map;
public class AdapterRequestList extends RecyclerView.Adapter<AdapterRequestList.MyViewHolders>
{
private String key;
private Spinner cn,sn;
private String hairstyleName;
private String customerCategory;
private String sessionDate;
private String cComment;
private String price;
private String clientID;
private String isPaid;
private DatabaseReference history ;
private DatabaseReference stylistHistoryRef ;
private String stylistID;
private Map<String,Request_View> map;
private Request_View itemDetails;
private int no1,no2;
private String assignedRef;
private Context context;
private String categoryItem;
private String styleItem;
private WebView payWebView;
private Checkout_Page checkoutPage;
private TextView priceText=null;
Request_Details request_details;
public AdapterRequestList(Map<String,Request_View> map, Context c) {
//this.itemList = List;
this.map=map;
this.context = c;
}
@Override
public www.atralk.co.atralk.AdapterRequestList.MyViewHolders onCreateViewHolder(ViewGroup parent, int viewType)
{
return new MyViewHolders(LayoutInflater.from(context).inflate(R.layout.recycler_item, parent, false));
}
@Override
public void onBindViewHolder(final AdapterRequestList.MyViewHolders holder, int position)
{
int i = 0;
for ( Map.Entry<String, Request_View> entry : map.entrySet())
{
if(position == i)
{
key = entry.getKey();
itemDetails = entry.getValue();
holder.title.setText(itemDetails.getCustomerCategory());
holder.description.setText(itemDetails.getHairstyleName());
}
i++;
}
}
private String getDate(Long time)
{
Calendar cal = Calendar.getInstance(Locale.getDefault());
cal.setTimeInMillis(time*1000);
String date = DateFormat.format("MM-dd-yyyy", cal).toString();
return date;
}
@Override
public int getItemCount() {
return this.map.size();
}
class MyViewHolders extends RecyclerView.ViewHolder
{
TextView title,description,options;
public MyViewHolders(@NonNull View itemView)
{
super(itemView);
title=itemView.findViewById(R.id.txtTitle);
description=itemView.findViewById(R.id.txtDescription);
options=itemView.findViewById(R.id.txtOption);
}
}
}
Изображение показывает один элемент, но у меня есть хэш-карта, которая имеет 3 элемента , Когда я помещаю некоторые глупые данные в массив, это работает, но затем мои данные сохраняются в хэш-карте введите описание изображения здесь