From 1a6230570a8f1419173b2ecd22548cc01ab08195 Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期一, 20 一月 2025 16:44:42 +0800
Subject: [PATCH] #

---
 app/src/main/java/com/example/agvcontroller/MainActivity.java  |    3 -
 app/src/main/java/com/example/agvcontroller/StartActivity.java |   10 ++--
 app/src/main/java/com/example/agvcontroller/EditeActivity.java |   24 ++++++++++-
 app/src/main/java/com/example/agvcontroller/EditeAdapter.java  |   68 ++++++++++++++++++++++++++++++---
 app/src/main/res/layout/activity_edite.xml                     |    3 +
 5 files changed, 89 insertions(+), 19 deletions(-)

diff --git a/app/src/main/java/com/example/agvcontroller/EditeActivity.java b/app/src/main/java/com/example/agvcontroller/EditeActivity.java
index 01ae776..d4ee322 100644
--- a/app/src/main/java/com/example/agvcontroller/EditeActivity.java
+++ b/app/src/main/java/com/example/agvcontroller/EditeActivity.java
@@ -1,17 +1,35 @@
 package com.example.agvcontroller;
 
 import android.os.Bundle;
+import android.util.Log;
 
 import androidx.appcompat.app.AppCompatActivity;
-import androidx.core.graphics.Insets;
-import androidx.core.view.ViewCompat;
-import androidx.core.view.WindowInsetsCompat;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+
+import java.util.ArrayList;
+import java.util.List;
 
 public class EditeActivity extends AppCompatActivity {
+
+    private RecyclerView recyclerView;
+    private List<Item> items;
+    private EditeAdapter adapter;
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_edite);
+
+        items = new ArrayList<>();
+
+        items.add(new Item("Item 1", "Description 1", 10, "1", 0));
+
+        recyclerView = findViewById(R.id.edite_recyclerView);
+        recyclerView.setLayoutManager(new LinearLayoutManager(this));
+
+        Log.d("EditeActivity", "onCreate: " + items.size());
+        adapter = new EditeAdapter(items);
+        recyclerView.setAdapter(adapter);
     }
 }
\ No newline at end of file
diff --git a/app/src/main/java/com/example/agvcontroller/EditeAdapter.java b/app/src/main/java/com/example/agvcontroller/EditeAdapter.java
index 5249683..e9a3925 100644
--- a/app/src/main/java/com/example/agvcontroller/EditeAdapter.java
+++ b/app/src/main/java/com/example/agvcontroller/EditeAdapter.java
@@ -1,23 +1,34 @@
 package com.example.agvcontroller;
 
+import android.graphics.Color;
 import android.util.Log;
+import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
+import android.widget.EditText;
 import android.widget.TextView;
 
 import androidx.annotation.NonNull;
 import androidx.recyclerview.widget.RecyclerView;
 
+import java.util.List;
+
 public class EditeAdapter  extends RecyclerView.Adapter<EditeAdapter.ViewHolder> {
 
+    private List<Item> itemList;
+
+    public EditeAdapter(List<Item> itemList) {
+        this.itemList = itemList;
+    }
+
     public static class ViewHolder extends RecyclerView.ViewHolder {
-        TextView agvNo;
-        TextView ip;
+        EditText agvNo;
+        EditText ip;
 
         public ViewHolder(@NonNull View itemView) {
             super(itemView);
-            agvNo = itemView.findViewById(R.id.item_agvNo);
-            ip = itemView.findViewById(R.id.item_ip);
+            agvNo = itemView.findViewById(R.id.agvNo);
+            ip = itemView.findViewById(R.id.ip);
 
             itemView.setOnClickListener(new View.OnClickListener() {
                 @Override
@@ -31,18 +42,61 @@
 
     @NonNull
     @Override
-    public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
-        return null;
+    public EditeAdapter.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
+        View view = LayoutInflater.from(parent.getContext()).inflate(viewType, parent, false);
+        ViewHolder viewHolder = new EditeAdapter.ViewHolder(view);
+        view.setOnClickListener(this::onClick);
+        return viewHolder;
+    }
+
+    @Override
+    public int getItemViewType(int position) {
+        return R.layout.edite_view;
+    }
+
+    private void onClick(View view) {
+        if (mOnItemClickListener != null) {
+            mOnItemClickListener.onItemClick(view,(int)view.getTag());
+        }
+    }
+
+    private EditeAdapter.OnItemClickListener mOnItemClickListener = null;
+
+    public static interface OnItemClickListener {
+        void onItemClick(View view,int position);
     }
 
     @Override
     public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
+        if (itemList == null || itemList.isEmpty()) {
+            // 榛樿鏄剧ず椤甸潰
+            //return 1;
+        } else {
+            Item item = itemList.get(position);
+            int status = item.getStatus();
+            switch (status) {
+                case 0:
+                    holder.itemView.setBackgroundColor(Color.parseColor("#D3D3D3"));
+                    break;
+                default:
+                    holder.itemView.setBackgroundColor(Color.parseColor("#90EE90"));
+                    break;
+            }
+            holder.agvNo.setText("AGV_NO锛� " + item.getAgvNo());
+            holder.ip.setText("AGV_IP锛� " + item.getIp());
 
+            holder.itemView.setTag(position);
+
+        }
     }
 
     @Override
     public int getItemCount() {
-        return 0;
+        if (itemList == null || itemList.isEmpty()) {
+            return 1;
+        } else {
+            return itemList.size();
+        }
     }
 
 }
diff --git a/app/src/main/java/com/example/agvcontroller/MainActivity.java b/app/src/main/java/com/example/agvcontroller/MainActivity.java
index 9503614..a374ad3 100644
--- a/app/src/main/java/com/example/agvcontroller/MainActivity.java
+++ b/app/src/main/java/com/example/agvcontroller/MainActivity.java
@@ -55,9 +55,6 @@
     public static final Map<String, Object> map = new ConcurrentHashMap();
     public static final Map<String, Object> car_num = new ConcurrentHashMap();
 
-    private RecyclerView recyclerView;
-    private ItemAdapter itemAdapter;
-    private List<Item> itemList;
     private Vibrator vibrator;
     private Button stopBtn;  // 鎬ュ仠鎸夐挳
 //    private Button forceSwitchBtn;  // 鎵嬭嚜鍔ㄥ己鍒跺紑鍏�
diff --git a/app/src/main/java/com/example/agvcontroller/StartActivity.java b/app/src/main/java/com/example/agvcontroller/StartActivity.java
index 534e02d..74142f4 100644
--- a/app/src/main/java/com/example/agvcontroller/StartActivity.java
+++ b/app/src/main/java/com/example/agvcontroller/StartActivity.java
@@ -35,11 +35,6 @@
         setContentView(R.layout.activity_start);
 
         addItem = findViewById(R.id.addbtn);
-
-
-        recyclerView = findViewById(R.id.recyclerView);
-        recyclerView.setLayoutManager(new LinearLayoutManager(this));
-
         addItem.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
@@ -48,6 +43,11 @@
             }
         });
 
+        recyclerView = findViewById(R.id.recyclerView);
+        recyclerView.setLayoutManager(new LinearLayoutManager(this));
+
+
+
         items = new ArrayList<>();
 
         adapter = new ItemAdapter(items);
diff --git a/app/src/main/res/layout/activity_edite.xml b/app/src/main/res/layout/activity_edite.xml
index 4d44a4f..637f41a 100644
--- a/app/src/main/res/layout/activity_edite.xml
+++ b/app/src/main/res/layout/activity_edite.xml
@@ -49,9 +49,10 @@
 
 
     <androidx.recyclerview.widget.RecyclerView
-        android:id="@+id/recyclerView"
+        android:id="@+id/edite_recyclerView"
         android:layout_width="0dp"
         android:layout_height="0dp"
+        app:layout_constraintBottom_toBottomOf="parent"
         app:layout_constraintEnd_toEndOf="parent"
         app:layout_constraintHorizontal_bias="1.0"
         app:layout_constraintStart_toStartOf="parent"

--
Gitblit v1.9.1