package etelligens.com.foodsafety.adapter; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.LinearLayout; import android.widget.TextView; import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; import etelligens.com.foodsafety.R; import etelligens.com.foodsafety.model.PrinterCustomerUseRecordsModal; import etelligens.com.foodsafety.model.UserBindPrinterModal; import org.jetbrains.annotations.NotNull; import java.util.ArrayList; /** * @author wj * @Description: 用户绑定打印机 * @create 2024/2/26 11:12 **/ public class UserBindPrinterModalAdopter extends RecyclerView.Adapter { private Context context; private ArrayList userBindPrinterModals; OnItemClick onItemClick; public interface OnItemClick { void sendData(UserBindPrinterModal userBindPrinterModal); } public UserBindPrinterModalAdopter(Context context, ArrayList userBindPrinterModals, UserBindPrinterModalAdopter.OnItemClick onItemClick) { this.context = context; this.userBindPrinterModals = userBindPrinterModals; this.onItemClick = onItemClick; } View view; @NonNull @NotNull @Override public UserBindPrinterModalAdopter.UserBindPrinterViewHolder onCreateViewHolder(@NonNull @NotNull ViewGroup parent, int viewType) { view = LayoutInflater.from(context).inflate(R.layout.item_layout_user_bind_printer_item, parent, false); return new UserBindPrinterModalAdopter.UserBindPrinterViewHolder(view); } @Override public void onBindViewHolder(@NonNull @NotNull UserBindPrinterViewHolder holder, int position) { final UserBindPrinterModal userBindPrinterModal = userBindPrinterModals.get(position); holder.storeName.setText(userBindPrinterModal.getStoreID()); holder.printerNameTxt.setText(userBindPrinterModal.getPrinterName()); holder.llBindPrinterLayout.setOnClickListener(view -> onItemClick.sendData(userBindPrinterModal)); } @Override public int getItemCount() { return userBindPrinterModals.size(); } public class UserBindPrinterViewHolder extends RecyclerView.ViewHolder { LinearLayout llBindPrinterLayout; TextView storeName, printerNameTxt; public UserBindPrinterViewHolder(View itemview) { super(itemview); storeName = itemview.findViewById(R.id.store_name_txt); printerNameTxt = itemview.findViewById(R.id.printer_name_txt); llBindPrinterLayout = itemview.findViewById(R.id.ll_bind_printer_layout); } } }