From a42814eaa86c2167764b73a22ca0b1a0bebd32b6 Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期一, 20 一月 2025 14:58:56 +0800
Subject: [PATCH] #

---
 app/src/main/res/agv_controller.jks                                 |    0 
 app/src/main/java/com/example/agvcontroller/StartActivity.java      |   13 ++
 app/src/main/AndroidManifest.xml                                    |    9 +
 app/src/main/res/layout/activity_start.xml                          |   71 +++++++++++++-
 app/src/main/res/drawable/logo.png                                  |    0 
 app/src/main/java/com/example/agvcontroller/EditeActivity.java      |   17 +++
 app/src/main/java/com/example/agvcontroller/EditeAdapter.java       |   48 +++++++++
 app/src/main/java/com/example/agvcontroller/protocol/AGV_F0_UP.java |   40 ++++++++
 app/src/main/res/layout/activity_edite.xml                          |   65 +++++++++++++
 9 files changed, 253 insertions(+), 10 deletions(-)

diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index fccd3b5..5317fde 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools" >
+    xmlns:tools="http://schemas.android.com/tools">
 
     <uses-permission android:name="android.permission.VIBRATE" />
     <uses-permission android:name="android.permission.INTERNET" />
@@ -17,13 +17,16 @@
         android:roundIcon="@mipmap/ic_launcher_round"
         android:supportsRtl="true"
         android:theme="@style/Theme.AGVController"
-        tools:targetApi="31" >
+        tools:targetApi="31">
+        <activity
+            android:name=".EditeActivity"
+            android:exported="false" />
         <activity
             android:name=".MainActivity"
             android:exported="false" />
         <activity
             android:name=".StartActivity"
-            android:exported="true" >
+            android:exported="true">
             <intent-filter>
                 <action android:name="android.intent.action.MAIN" />
 
diff --git a/app/src/main/java/com/example/agvcontroller/EditeActivity.java b/app/src/main/java/com/example/agvcontroller/EditeActivity.java
new file mode 100644
index 0000000..01ae776
--- /dev/null
+++ b/app/src/main/java/com/example/agvcontroller/EditeActivity.java
@@ -0,0 +1,17 @@
+package com.example.agvcontroller;
+
+import android.os.Bundle;
+
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.core.graphics.Insets;
+import androidx.core.view.ViewCompat;
+import androidx.core.view.WindowInsetsCompat;
+
+public class EditeActivity extends AppCompatActivity {
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_edite);
+    }
+}
\ 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
new file mode 100644
index 0000000..5249683
--- /dev/null
+++ b/app/src/main/java/com/example/agvcontroller/EditeAdapter.java
@@ -0,0 +1,48 @@
+package com.example.agvcontroller;
+
+import android.util.Log;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.TextView;
+
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
+
+public class EditeAdapter  extends RecyclerView.Adapter<EditeAdapter.ViewHolder> {
+
+    public static class ViewHolder extends RecyclerView.ViewHolder {
+        TextView agvNo;
+        TextView ip;
+
+        public ViewHolder(@NonNull View itemView) {
+            super(itemView);
+            agvNo = itemView.findViewById(R.id.item_agvNo);
+            ip = itemView.findViewById(R.id.item_ip);
+
+            itemView.setOnClickListener(new View.OnClickListener() {
+                @Override
+                public void onClick(View v) {
+                    Log.i("List","123");
+                }
+            });
+
+        }
+    }
+
+    @NonNull
+    @Override
+    public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
+        return null;
+    }
+
+    @Override
+    public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
+
+    }
+
+    @Override
+    public int getItemCount() {
+        return 0;
+    }
+
+}
diff --git a/app/src/main/java/com/example/agvcontroller/StartActivity.java b/app/src/main/java/com/example/agvcontroller/StartActivity.java
index e6592be..534e02d 100644
--- a/app/src/main/java/com/example/agvcontroller/StartActivity.java
+++ b/app/src/main/java/com/example/agvcontroller/StartActivity.java
@@ -2,10 +2,10 @@
 
 import android.content.Context;
 import android.content.Intent;
-import android.content.SharedPreferences;
 import android.os.Bundle;
 import android.util.Log;
 import android.view.View;
+import android.widget.Button;
 
 import androidx.appcompat.app.AppCompatActivity;
 import androidx.recyclerview.widget.LinearLayoutManager;
@@ -25,6 +25,7 @@
     private RecyclerView recyclerView;
     private List<Item> items;
     private ItemAdapter adapter;
+    private Button addItem;
     SocketManager socketManager;
 
     @Override
@@ -33,10 +34,20 @@
         super.onCreate(savedInstanceState);
         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) {
+                Intent intent = new Intent(StartActivity.this, EditeActivity.class);
+                startActivity(intent);
+            }
+        });
+
         items = new ArrayList<>();
 
         adapter = new ItemAdapter(items);
diff --git a/app/src/main/java/com/example/agvcontroller/protocol/AGV_F0_UP.java b/app/src/main/java/com/example/agvcontroller/protocol/AGV_F0_UP.java
new file mode 100644
index 0000000..8ebe5ca
--- /dev/null
+++ b/app/src/main/java/com/example/agvcontroller/protocol/AGV_F0_UP.java
@@ -0,0 +1,40 @@
+package com.example.agvcontroller.protocol;
+
+
+import com.example.agvcontroller.socket.RadixTools;
+
+import java.io.Serializable;
+
+/**
+ * Created by vincent on 2023/3/15
+ */
+public class AGV_F0_UP implements IMessageBody, Serializable {
+
+    private static final long serialVersionUID = -5588066188890649095L;
+
+    @Override
+    public byte[] writeToBytes() {
+        return new byte[0];
+    }
+
+    @Override
+    public void readFromBytes(byte[] bytes) {
+        // password
+        this.password = RadixTools.bytesToHexStr(Utils.sliceWithReverse(bytes, 0, 4));
+        // type
+        this.type = Utils.sliceWithReverse(bytes, 4, 1)[0];
+
+
+    }
+
+    @Override
+    public String getSerialNo() {
+        return "";
+    }
+
+    private String password;
+
+    private byte type;
+
+}
+
diff --git a/app/src/main/res/agv_controller.jks b/app/src/main/res/agv_controller.jks
new file mode 100644
index 0000000..0f946af
--- /dev/null
+++ b/app/src/main/res/agv_controller.jks
Binary files differ
diff --git a/app/src/main/res/drawable/logo.png b/app/src/main/res/drawable/logo.png
new file mode 100644
index 0000000..965ae27
--- /dev/null
+++ b/app/src/main/res/drawable/logo.png
Binary files differ
diff --git a/app/src/main/res/layout/activity_edite.xml b/app/src/main/res/layout/activity_edite.xml
new file mode 100644
index 0000000..4d44a4f
--- /dev/null
+++ b/app/src/main/res/layout/activity_edite.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="utf-8"?>
+<androidx.constraintlayout.widget.ConstraintLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:id="@+id/main"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    tools:context=".EditeActivity">
+
+    <androidx.constraintlayout.widget.ConstraintLayout
+        android:id="@+id/header"
+        android:layout_width="0dp"
+        android:layout_height="44dp"
+        android:background="#6750a4"
+        app:layout_constraintTop_toTopOf="parent"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintEnd_toEndOf="parent">
+
+        <!-- Logo on the left -->
+        <ImageView
+            android:id="@+id/logo"
+            android:layout_width="95dp"
+            android:layout_height="32dp"
+            android:layout_marginStart="10dp"
+            android:layout_marginTop="10dp"
+            android:layout_marginBottom="10dp"
+            android:adjustViewBounds="true"
+            android:maxWidth="32dp"
+            android:maxHeight="32dp"
+            android:src="@drawable/logo"
+            app:layout_constraintTop_toTopOf="parent"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintStart_toStartOf="parent" />
+
+        <!-- Title centered in the parent -->
+        <TextView
+            android:id="@+id/headerText"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="绠$悊AGV"
+            android:textColor="#dddddd"
+            android:textSize="20sp"
+            app:layout_constraintTop_toTopOf="parent"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintEnd_toEndOf="parent" />
+    </androidx.constraintlayout.widget.ConstraintLayout>
+
+
+    <androidx.recyclerview.widget.RecyclerView
+        android:id="@+id/recyclerView"
+        android:layout_width="0dp"
+        android:layout_height="0dp"
+        app:layout_constraintEnd_toEndOf="parent"
+        app:layout_constraintHorizontal_bias="1.0"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintTop_toBottomOf="@+id/header"
+        app:layout_constraintVertical_bias="1.0" />
+
+
+
+
+
+</androidx.constraintlayout.widget.ConstraintLayout>
diff --git a/app/src/main/res/layout/activity_start.xml b/app/src/main/res/layout/activity_start.xml
index 6111186..452dc4c 100644
--- a/app/src/main/res/layout/activity_start.xml
+++ b/app/src/main/res/layout/activity_start.xml
@@ -1,5 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<androidx.constraintlayout.widget.ConstraintLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
     android:id="@+id/main"
@@ -7,9 +8,67 @@
     android:layout_height="match_parent"
     tools:context=".StartActivity">
 
-  <androidx.recyclerview.widget.RecyclerView
-      android:id="@+id/recyclerView"
-      android:layout_width="match_parent"
-      android:layout_height="match_parent"/>
+    <androidx.constraintlayout.widget.ConstraintLayout
+        android:id="@+id/header"
+        android:layout_width="0dp"
+        android:layout_height="44dp"
+        android:background="#6750a4"
+        app:layout_constraintTop_toTopOf="parent"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintEnd_toEndOf="parent">
 
-  </LinearLayout>
\ No newline at end of file
+        <!-- Logo on the left -->
+        <ImageView
+            android:id="@+id/logo"
+            android:layout_width="95dp"
+            android:layout_height="32dp"
+            android:layout_marginStart="10dp"
+            android:layout_marginTop="10dp"
+            android:layout_marginBottom="10dp"
+            android:adjustViewBounds="true"
+            android:maxWidth="32dp"
+            android:maxHeight="32dp"
+            android:src="@drawable/logo"
+            app:layout_constraintTop_toTopOf="parent"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintStart_toStartOf="parent" />
+
+        <!-- Title centered in the parent -->
+        <TextView
+            android:id="@+id/headerText"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="涓壃_AGV"
+            android:textColor="#dddddd"
+            android:textSize="20sp"
+            app:layout_constraintTop_toTopOf="parent"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintEnd_toEndOf="parent" />
+    </androidx.constraintlayout.widget.ConstraintLayout>
+
+
+    <androidx.recyclerview.widget.RecyclerView
+        android:id="@+id/recyclerView"
+        android:layout_width="0dp"
+        android:layout_height="0dp"
+        app:layout_constraintBottom_toTopOf="@id/addbtn"
+        app:layout_constraintEnd_toEndOf="parent"
+        app:layout_constraintHorizontal_bias="1.0"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintTop_toBottomOf="@+id/header"
+        app:layout_constraintVertical_bias="1.0" />
+
+  <Button
+      android:id="@+id/addbtn"
+      android:layout_width="0dp"
+      android:layout_height="wrap_content"
+      android:layout_margin="20dp"
+      android:text="绠$悊璁惧"
+
+      app:layout_constraintBottom_toBottomOf="parent"
+      app:layout_constraintEnd_toEndOf="parent"
+      app:layout_constraintHorizontal_bias="0.0"
+      app:layout_constraintStart_toStartOf="parent" />
+
+</androidx.constraintlayout.widget.ConstraintLayout>

--
Gitblit v1.9.1