From d5722c5a50829df634f96bff131fb8cc01f6a17c Mon Sep 17 00:00:00 2001 From: whycq <913841844@qq.com> Date: 星期六, 17 八月 2024 16:27:57 +0800 Subject: [PATCH] # --- app/src/main/java/com/example/agvcontroller/ItemAdapter.java | 103 +++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 83 insertions(+), 20 deletions(-) diff --git a/app/src/main/java/com/example/agvcontroller/ItemAdapter.java b/app/src/main/java/com/example/agvcontroller/ItemAdapter.java index 4860d7c..c981707 100644 --- a/app/src/main/java/com/example/agvcontroller/ItemAdapter.java +++ b/app/src/main/java/com/example/agvcontroller/ItemAdapter.java @@ -1,5 +1,9 @@ package com.example.agvcontroller; +import static androidx.core.content.ContextCompat.startActivity; + +import android.content.Intent; +import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -18,26 +22,6 @@ this.itemList = itemList; } - @NonNull - @Override - public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { - View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_view_linear, parent, false); - return new ViewHolder(view); - } - - @Override - public void onBindViewHolder(@NonNull ViewHolder holder, int position) { - Item item = itemList.get(position); - holder.ip.setText("璁惧IP锛� " + item.getIp()); - holder.title.setText("璁惧缂栧彿锛� " + item.getText()); - - } - - @Override - public int getItemCount() { - return itemList.size(); - } - public static class ViewHolder extends RecyclerView.ViewHolder { TextView title; TextView ip; @@ -46,6 +30,85 @@ super(itemView); title = itemView.findViewById(R.id.item_title); ip = itemView.findViewById(R.id.item_ip); + + itemView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + Log.i("List","123"); + + } + }); + } } + + + @Override + public int getItemViewType(int position) { + //return R.layout.item_view_linear; + if (itemList == null || itemList.isEmpty()) { + return R.layout.item_layout; + } else { + return R.layout.item_view_linear; + } + } + @NonNull + @Override + public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + View view = LayoutInflater.from(parent.getContext()).inflate(viewType, parent, false); + ViewHolder viewHolder = new ItemAdapter.ViewHolder(view); + view.setOnClickListener(this::onClick); + return viewHolder; + } + + private void onClick(View view) { + if (mOnItemClickListener != null) { + mOnItemClickListener.onItemClick(view,(int)view.getTag()); + } + } + + private OnItemClickListener mOnItemClickListener = null; + + public static interface OnItemClickListener { + void onItemClick(View view,int position); + } + + public void setmOnItemClickListener(OnItemClickListener listener) { + this.mOnItemClickListener = listener; + } + + @Override + public void onBindViewHolder(@NonNull ViewHolder holder, int position) { + //Item item = itemList.get(position); + //holder.ip.setText("璁惧IP锛� " + item.getIp()); + //holder.title.setText("璁惧缂栧彿锛� " + item.getText()); + if (itemList == null || itemList.isEmpty()) { + // 榛樿鏄剧ず椤甸潰 + //return 1; + } else { + // 鏁版嵁鏄剧ず椤甸潰 + Item item = itemList.get(position); + holder.ip.setText("璁惧IP锛� " + item.getIp()); + holder.title.setText("璁惧缂栧彿锛� " + item.getText()); + holder.itemView.setTag(position); + + } + } + + @Override + public int getItemCount() { + //return itemList.size(); + if (itemList == null || itemList.isEmpty()) { + return 1; + } else { + return itemList.size(); + } + } + + public void addItem (Item item) { + itemList.add(item); + notifyItemInserted(itemList.size() - 1); + } + + } -- Gitblit v1.9.1