Чтение (System.out.println) из нескольких элементов внутри RecyclerView - PullRequest
0 голосов
/ 14 апреля 2019

Пожалуйста, сначала ознакомьтесь с пользовательским интерфейсом

Мое приложение извлекает данные с онлайн-сервера и делает просмотр с использованием этих данных. Предположим, что каждый мой вид рециркулятора содержит 2 TextViews и 3 кнопки.

Вот пример моего рециклера

Алекс - 123 - просмотр - принятие - отклонение

Джарвис - 423 - просмотр - принятие - отклонение

Таким образом, каждый мой вид переработчика содержит 5 элементов,

Теперь моя проблема:

Мне нужно получить одно из текстовых представлений для чтения изнутри этого конкретного представления переработчика, это означает, что если я нажму на представление переработчика Джарвиса, я получу System.out или тост его номера телефона 423.

вот как далеко я попробовал:

MyAdapterForRecycleView1.java

import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.widget.RecyclerView;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

import com.android.volley.AuthFailureError;
import com.android.volley.NetworkError;
import com.android.volley.NoConnectionError;
import com.android.volley.ParseError;
import com.android.volley.Request;
import com.android.volley.Response;
import com.android.volley.ServerError;
import com.android.volley.TimeoutError;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;

import org.json.JSONArray;
import org.json.JSONObject;

import java.util.HashMap;
import java.util.List;
import java.util.Map;


public class MyAdapterForRecycleView1 extends RecyclerView.Adapter<MyAdapterForRecycleView1.MyAdapterForRecycleView1ViewHolder>
{
    List<ListItemForRecycleView1> listItems;
    OnItemClickListener mListener;
    Context context;
    String allUserPhoneGet="";

    //public TextView allUserName, allUserPhone;

    public MyAdapterForRecycleView1(List<ListItemForRecycleView1> listItems, Context context)
    {
        this.listItems = listItems;
        this.context = context;
    }


    public interface OnItemClickListener
    {
        void onItemClick(int position);
    }

    public void setOnItemClickListener(OnItemClickListener listener)
    {
        mListener = listener;
    }

    public class MyAdapterForRecycleView1ViewHolder extends RecyclerView.ViewHolder
    {

        public TextView allUserName, allUserPhone;
        public Button accept, profileView, reject;

        public MyAdapterForRecycleView1ViewHolder(View itemView, final OnItemClickListener listener)
        {
            super(itemView);

            allUserName = itemView.findViewById(R.id.all_users_Name);
            allUserPhone = itemView.findViewById(R.id.all_users_Phone);
            accept = itemView.findViewById(R.id.userReq_acceptButton);
            profileView = itemView.findViewById(R.id.userReq_viewButton);
            reject = itemView.findViewById(R.id.userReq_rejectButton);

        }
    }

    @Override
    public MyAdapterForRecycleView1ViewHolder onCreateViewHolder(ViewGroup parent, int viewType)
    {
        View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.all_users_display_layout, parent, false);
        MyAdapterForRecycleView1ViewHolder evh = new MyAdapterForRecycleView1ViewHolder(v, mListener);
        return evh;
    }

    @Override
    public void onBindViewHolder(MyAdapterForRecycleView1ViewHolder holder, int position)
    {
        //MyAdapterForRecycleView1Item currentItem = mMyAdapterForRecycleView1List.get(position);

        ListItemForRecycleView1 listItem = listItems.get(position);

        holder.allUserName.setText(listItem.getName());
        holder.allUserPhone.setText(listItem.getPhone());

        allUserPhoneGet = holder.allUserPhone.getText().toString();

        holder.accept.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                Toast.makeText(context, "accept", Toast.LENGTH_SHORT).show();
            }
        });
        holder.profileView.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                Toast.makeText(context, "view", Toast.LENGTH_SHORT).show();
            }
        });
        holder.reject.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                Toast.makeText(context, "reject", Toast.LENGTH_SHORT).show();
            }
        });
    }

    @Override
    public int getItemCount()
    {
        return listItems.size();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...