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