package com.hdl.photovoltaic.ui.adapter; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; import com.hdl.photovoltaic.R; import com.hdl.photovoltaic.ui.bean.MessageBean; import java.util.ArrayList; import java.util.List; public class MessageAdapter extends RecyclerView.Adapter { private List mList; private final Context mContext; private MessageAdapter.OnclickListener noOnclickListener;//点击了的监听器 public MessageAdapter(List list, Context context) { mList = list; this.mContext = context; } @NonNull @Override public MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { View view = LayoutInflater.from(mContext).inflate(R.layout.item_message, parent, false); return new MyViewHolder(view); } @Override public void onBindViewHolder(@NonNull MyViewHolder holder, int position) { MessageBean messageBean = this.mList.get(position); holder.item_content_tv.setText(messageBean.getTitle()); holder.item_home_name_tv.setText(messageBean.getHomeName()); holder.item_time_tv.setText(messageBean.getCreateTime() + ""); holder.item_estate_tv.setText(messageBean.getStatus() + ""); holder.item_unread_message_tv.setVisibility(View.VISIBLE); if (messageBean.isRead()) { holder.item_unread_message_tv.setVisibility(View.GONE); } holder.itemView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (noOnclickListener != null) { noOnclickListener.onClick(holder.getAdapterPosition(), messageBean); } } }); } @Override public int getItemCount() { return mList == null ? 0 : mList.size(); } public void setList(List list) { this.mList = list; } public void setNoOnclickListener(MessageAdapter.OnclickListener onclickListener) { this.noOnclickListener = onclickListener; } /** * 一行布局容器 */ static class MyViewHolder extends RecyclerView.ViewHolder { public TextView item_content_tv; public TextView item_home_name_tv; public TextView item_time_tv; public TextView item_estate_tv; public TextView item_unread_message_tv; public MyViewHolder(@NonNull View itemView) { super(itemView); item_content_tv = itemView.findViewById(R.id.item_content_tv); item_home_name_tv = itemView.findViewById(R.id.item_home_name_tv); item_time_tv = itemView.findViewById(R.id.item_time_tv); item_estate_tv = itemView.findViewById(R.id.item_estate_tv); item_unread_message_tv = itemView.findViewById(R.id.item_unread_message_tv); } } public interface OnclickListener { void onClick(int position, MessageBean messageBean); } }