.get(position)でリサイクラービューアダプターを使用して、リサイクラービューJavaでedittextからテキストを取得できません

JOSE CS:

私はJavaプログラミングが初めてです。チャットアプリケーションを作成しようとしていますが、テキストを特定のRecyclerViewレイアウトで取得したいと考えていますEditText以下のコードをrecyclerビューアダプターコードとして使用しました。しかしmImagenames.get(position)、行60を取得するエラーが表示されますmImageNames.get(position)。正しく作業する必要があります。どんな助けでも深く感謝します。前もって感謝します

public class RecyclerViewAdapter extends RecyclerView.Adapter<RecyclerViewAdapter.ViewHolder>
{
    private List<item_type> mImageNames;
    private Context mContext;


    public RecyclerViewAdapter(List<item_type> mImageNames, Context mContext) {
        this.mImageNames = mImageNames;
        this.mContext = mContext;
    }

    @NonNull
    @Override
    public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.layout_list_item,parent,false);
        ViewHolder holder =new ViewHolder(view);
        return holder;
    }

    @Override
    public void onBindViewHolder(@NonNull ViewHolder holder, final int position) {
        item_type type =mImageNames.get(position);
        if("MSG_TYPE_GROUP".equals(type.getType())){
            holder.imageNames.setText(type.getName());

            holder.last_messages.setText("that trick won");

        }
        if("MSG_TYPE_PERSONAL".equals(type.getType())){
            holder.imageName.setText(type.getName());
            holder.last_message.setText("that was a nice trick");
        }



        holder.parentLayout.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent =new Intent(mContext,ChatActivity.class);
                intent.putExtra("usernames",mImageNames.get(position));
                mContext.startActivity(intent);
            }
        });

        holder.grouplayout.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent =new Intent(mContext,chat_group.class);
                mContext.startActivity(intent);
            }
        });


    }

    @Override
    public int getItemCount() {

        return mImageNames.size();

    }

    public class ViewHolder extends RecyclerView.ViewHolder{
         CircleImageView image,imagess;
         TextView imageName,last_message,imageNames,last_messages;
         RelativeLayout parentLayout,grouplayout;
        public ViewHolder(@NonNull View itemView) {
            super(itemView);
            image=itemView.findViewById(R.id.images);
            imageName=itemView.findViewById(R.id.imageName);
            last_message=itemView.findViewById(R.id.last_mess);
            parentLayout=itemView.findViewById(R.id.parent_layout);
            imagess=itemView.findViewById(R.id.imagess);
            imageNames=itemView.findViewById(R.id.imageNames);
            last_messages=itemView.findViewById(R.id.last_messs);
            grouplayout=itemView.findViewById(R.id.group);
        }
    }
}
ケルビン:

コードを見ると、意図的にオブジェクトを渡そうとしていることが明らかです

 intent.putExtra("usernames",mImageNames.get(position).getName());

名前を渡したい場合は、これを試してください。オブジェクトを次のアクティビティに渡したい場合は、そのクラスをパーセル可能にすることができます。

詳細についてはhttps://stackoverflow.com/a/7181792/3995126をご覧ください。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ