From c73a6318cb54e1bd16f6f1f2e432c2ed0ab4f594 Mon Sep 17 00:00:00 2001
From: endian11 <Dana_Lee1016@126.com>
Date: 星期一, 24 八月 2020 18:01:53 +0800
Subject: [PATCH] SharedPrefernce增加保存hashmap ;设置界面增加车辆模型、地图信息展示(名字、版本)和版本更新功能,点击之后进行http请求,请求完成后发送地图、车辆给移动站服务;设置界面信息展示增加TypeCount,展示地图简要信息

---
 app/src/main/java/safeluck/drive/evaluation/adapter/BaseDataInfoAdapter.java |  106 ++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 93 insertions(+), 13 deletions(-)

diff --git a/app/src/main/java/safeluck/drive/evaluation/adapter/BaseDataInfoAdapter.java b/app/src/main/java/safeluck/drive/evaluation/adapter/BaseDataInfoAdapter.java
index 4eb06aa..db42cd3 100644
--- a/app/src/main/java/safeluck/drive/evaluation/adapter/BaseDataInfoAdapter.java
+++ b/app/src/main/java/safeluck/drive/evaluation/adapter/BaseDataInfoAdapter.java
@@ -1,10 +1,12 @@
 package safeluck.drive.evaluation.adapter;
 
 import android.content.Context;
+import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.BaseAdapter;
+import android.widget.Button;
 import android.widget.TextView;
 
 import java.util.ArrayList;
@@ -12,6 +14,7 @@
 
 import safeluck.drive.evaluation.R;
 import safeluck.drive.evaluation.bean.BaseDataUIBean;
+import safeluck.drive.evaluation.fragment.BaseDatasFragment;
 
 /**
  * MyApplication2
@@ -20,10 +23,11 @@
  * All Rights Saved! Chongqing AnYun Tech co. LTD
  */
 
-public class BaseDataInfoAdapter extends BaseAdapter {
-    private List<BaseDataUIBean> persons = new ArrayList<>();//gps淇℃伅
+public class BaseDataInfoAdapter extends BaseAdapter implements View.OnClickListener {
+    private List<BaseDataUIBean> persons = new ArrayList<>();
     private final static String TAG = "anyun_info";
     private Context mContext;
+    private Callback mCallback;
     @Override
     public int getCount() {
         return persons.size();
@@ -35,26 +39,73 @@
     }
 
     @Override
+    public int getViewTypeCount() {
+        return 2;
+    }
+
+    @Override
     public long getItemId(int i) {
         return i;
     }
 
     @Override
+    public int getItemViewType(int position) {
+        if (persons.get(position).getType()==0){
+            return 0;
+        }else{
+
+        return 1;
+        }
+    }
+
+    @Override
     public View getView(int i, View view, ViewGroup viewGroup) {
         InfoHodler infoHodler = null;
-        if (view == null){
-            view = LayoutInflater.from(mContext).inflate(R.layout.gps_info_item,null);
-            infoHodler = new InfoHodler();
-            infoHodler.name = view.findViewById(R.id.text_check_info);
-            view.setTag(infoHodler);
-        }else{
-            infoHodler = (InfoHodler) view.getTag();
+        MapCarInfoHodler mapCarinfoHodler = null;
+
+        switch (getItemViewType(i)){
+            case 0:
+                if (view == null){
+                    view = LayoutInflater.from(mContext).inflate(R.layout.gps_info_item,null);
+                    infoHodler = new InfoHodler();
+                    infoHodler.name = view.findViewById(R.id.text_check_info);
+                    view.setTag(infoHodler);
+                }else{
+                    infoHodler = (InfoHodler) view.getTag();
+                }
+                infoHodler.name.setText(getItem(i).getDes());
+                infoHodler.name.setCompoundDrawablesWithIntrinsicBounds(mContext.getResources().
+                        getDrawable(getItem(i).getRes_id()),null,null,null);
+                infoHodler.name.setCompoundDrawablePadding(10);
+                break;
+            default:
+                Log.i(TAG,"Defalut");
+                if (view == null){
+                    view = LayoutInflater.from(mContext).inflate(R.layout.map_car_info_update,null);
+                    mapCarinfoHodler = new MapCarInfoHodler();
+                    mapCarinfoHodler.name = view.findViewById(R.id.tv_map_name);
+                    mapCarinfoHodler.version = view.findViewById(R.id.tv_version);
+                    mapCarinfoHodler.btn = view.findViewById(R.id.btn_update_map_car);
+                    view.setTag(mapCarinfoHodler);
+                }else{
+                    mapCarinfoHodler = (MapCarInfoHodler) view.getTag();
+                }
+                mapCarinfoHodler.btn.setOnClickListener(this);
+                mapCarinfoHodler.btn.setTag(i);
+                mapCarinfoHodler.name.setText(getItem(i).getDes());
+                mapCarinfoHodler.name.setCompoundDrawablesWithIntrinsicBounds(mContext.getResources().
+                        getDrawable(getItem(i).getRes_id()),null,null,null);
+                mapCarinfoHodler.name.setCompoundDrawablePadding(10);
+
+                mapCarinfoHodler.btn.setText(getItem(i).getBtn_txt());
+                mapCarinfoHodler.version.setText(getItem(i).getVersion());
+
+
+                break;
         }
 
-        infoHodler.name.setText(getItem(i).getDes());
-        infoHodler.name.setCompoundDrawablesWithIntrinsicBounds(mContext.getResources().
-                getDrawable(getItem(i).getRes_id()),null,null,null);
-        infoHodler.name.setCompoundDrawablePadding(10);
+
+
         return view;
     }
 
@@ -71,6 +122,24 @@
         notifyDataSetChanged();//鍒锋柊鐣岄潰
     }
 
+    @Override
+    public void onClick(View v) {
+        if (mCallback != null){
+            mCallback.click(v);
+        }
+    }
+
+    public void setCallback(Callback call) {
+        this.mCallback = call;
+    }
+
+    /**
+     * 鑷畾涔夋帴鍙o紝鐢ㄤ簬鍥炶皟鎸夐挳鐐瑰嚮浜嬩欢鍒癋ragment銆丄ctivity
+     */
+    public interface Callback{
+        void click(View view);
+    }
+
     static class InfoHodler {
 
 
@@ -81,5 +150,16 @@
 
 
     }
+    static class MapCarInfoHodler {
+
+
+        public TextView name;//濮撳悕
+        public TextView version;//濮撳悕
+    public Button btn;
+
+
+
+
+    }
 
 }

--
Gitblit v1.8.0