RecyclerView показывает только два текстовых представления? Другие не отображаются ... элементы не отображаются - PullRequest
2 голосов
/ 08 мая 2020

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

public class RecieptFP extends AppCompatActivity {
    private RecyclerView mFirestoreList;
    private FirebaseFirestore firebasefirestore;
    private FirestoreRecyclerAdapter adapter;
    Button Back;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_reciept_fp);
        Back = findViewById(R.id.btndashboard);

        firebasefirestore = FirebaseFirestore.getInstance();
        mFirestoreList = findViewById(R.id.firestore_list);

        //query
        Query query = firebasefirestore.collection("UserDataR");
        //RecyclerOptions
        FirestoreRecyclerOptions<RecieptModel> options = new FirestoreRecyclerOptions.Builder<RecieptModel>()
                .setQuery(query, RecieptModel.class)
                .build();
        adapter = new FirestoreRecyclerAdapter<RecieptModel, RecieptViewHolder>(options) {
            @NonNull
            @Override
            public RecieptViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
                View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.listsingleiteam, parent, false);
                return new RecieptViewHolder(view);
            }

            @Override
            protected void onBindViewHolder(RecieptViewHolder recieptViewHolder, int i, RecieptModel recieptModel) {
                recieptViewHolder.list_name.setText(recieptModel.getName());
                recieptViewHolder.list_amount.setText(recieptModel.getAmount());
                recieptViewHolder.list_contact.setText(recieptModel.getContact());
                recieptViewHolder.list_Flatno.setText(recieptModel.getFlatNo());
            }
        };
        //viewholder
        mFirestoreList.setHasFixedSize(false);
        mFirestoreList.setLayoutManager(new LinearLayoutManager(this));
        mFirestoreList.setAdapter(adapter);

        Back.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent i1 = new Intent(RecieptFP.this, Dashboard.class);
                startActivity(i1);

            }
        });
    }


    private class RecieptViewHolder extends RecyclerView.ViewHolder {

        private TextView list_name;
        private TextView list_amount;
        private TextView list_contact;
        private TextView list_Flatno;

        public RecieptViewHolder(@NonNull View itemView) {
            super(itemView);
            list_name = itemView.findViewById(R.id.list_name);
            list_amount = itemView.findViewById(R.id.list_amount);
            list_contact = itemView.findViewById(R.id.list_contact);
            list_Flatno = itemView.findViewById(R.id.list_Flatno);
        }
    }

    @Override
    protected void onStart() {
        super.onStart();
        adapter.startListening();
    }

    @Override
    protected void onStop() {
        super.onStop();
        adapter.stopListening();
    }

}

Recipet Model

package com.societypay;

public class RecieptModel {
    private  String Name;
    private  String Amount;
    private String Contact;
    private String FlatNo;

    private  RecieptModel(){}
    private RecieptModel(String Name,String Amount,String Contact,String FlatNo){
        this.Name=Name;
        this.Amount=Amount;
        this.Contact=Contact;
        this.FlatNo=FlatNo;
    }
    public String getName() {
        return Name;
    }

    public void setName(String name) {
        Name = name;
    }

    public String getAmount() {
        return Amount;
    }

    public void setAmount(String amount) {
        Amount = amount;
    }

    public String getContact() {
        return Contact;
    }

    public void setContact(String contact) {
        Contact = contact;
    }


    public String getFlatNo() {
        return FlatNo;
    }

    public void setFlatNo(String flatNo) {
        FlatNo = flatNo;
    }
}

enter image description here

1 Ответ

3 голосов
/ 08 мая 2020

Пожалуйста, используйте следующее pojo и попробуйте.

public class RecieptModel
{
    private String MobileNo;

    private String Amount;

    private String Flat_no;

    private String Name;

    public String getMobileNo ()
    {
        return MobileNo;
    }

    public void setMobileNo (String MobileNo)
    {
        this.MobileNo = MobileNo;
    }

    public String getAmount ()
    {
        return Amount;
    }

    public void setAmount (String Amount)
    {
        this.Amount = Amount;
    }

    public String getFlat_no ()
    {
        return Flat_no;
    }

    public void setFlat_no (String Flat_no)
    {
        this.Flat_no = Flat_no;
    }

    public String getName ()
    {
        return Name;
    }

    public void setName (String Name)
    {
        this.Name = Name;
    }

    @Override
    public String toString()
    {
        return "ClassPojo [MobileNo = "+MobileNo+", Amount = "+Amount+", Flat_no = "+Flat_no+", Name = "+Name+"]";
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...