diff --git a/modules/mogo-module-check/src/main/java/com/mogo/module/check/model/CheckItemInfo.java b/modules/mogo-module-check/src/main/java/com/mogo/module/check/model/CheckItemInfo.java index 7c5f8a1e53..0524eb69de 100644 --- a/modules/mogo-module-check/src/main/java/com/mogo/module/check/model/CheckItemInfo.java +++ b/modules/mogo-module-check/src/main/java/com/mogo/module/check/model/CheckItemInfo.java @@ -9,6 +9,9 @@ import java.util.ArrayList; * @since: 7/28/21 */ public class CheckItemInfo implements Serializable { + //view类型 + private int style; + //view标题 private String title; //项目指标描述 如:版本升级/存在风险等 private String value; @@ -48,6 +51,14 @@ public class CheckItemInfo implements Serializable { this.usual = unusual; } + public int getStyle() { + return style; + } + + public void setStyle(int style) { + this.style = style; + } + public static class DetailItem implements Serializable { private String title; private String value; @@ -68,130 +79,14 @@ public class CheckItemInfo implements Serializable { this.value = value; } } -} - -/** - * 系统检测-鹰眼 - */ -class SystemResultForYingYan implements Serializable { - //版本 - private String version; - //电量 - private String battery; - //网络 - private String netStatus; - //cpu占比 - private String cpu; - //内存占比 - private String memory; - - public String getVersion() { - return version; - } - - public void setVersion(String version) { - this.version = version; - } - - public String getBattery() { - return battery; - } - - public void setBattery(String battery) { - this.battery = battery; - } - - public String getNetStatus() { - return netStatus; - } - - public void setNetStatus(String netStatus) { - this.netStatus = netStatus; - } - - public String getCpu() { - return cpu; - } - - public void setCpu(String cpu) { - this.cpu = cpu; - } - - public String getMemory() { - return memory; - } - - public void setMemory(String memory) { - this.memory = memory; - } - - @Override - public String toString() { - return "SystemResultForYingYan{" + - "version='" + version + '\'' + - ", battery='" + battery + '\'' + - ", netStatus='" + netStatus + '\'' + - ", cpu='" + cpu + '\'' + - ", memory='" + memory + '\'' + - '}'; + public interface CheckAdapterStyleEnum { + int ITEM_TYPE_CHECK_TITLE = 0; + int ITEM_TYPE_CHECK_LIST = 1; + int ITEM_TYPE_CHECK_IMAGE = 2; } } -/** - * 系统检查-自动驾驶系统 - */ -class SystemResultForADAS implements Serializable { - -} - -/** - * 软件检测-鹰眼 - */ -class SoftwareForYingYan implements Serializable { - //数据时延 - private long adasDataTime; - //定位时延 - private long locationTime; - - public long getAdasDataTime() { - return adasDataTime; - } - - public void setAdasDataTime(long adasDataTime) { - this.adasDataTime = adasDataTime; - } - - public long getLocationTime() { - return locationTime; - } - - public void setLocationTime(long locationTime) { - this.locationTime = locationTime; - } - - @Override - public String toString() { - return "SoftwareForYingYan{" + - "adasDataTime=" + adasDataTime + - ", locationTime=" + locationTime + - '}'; - } -} - -/** - * 软件检测-ADAS - */ -class SoftwareForADAS implements Serializable { - -} -/** - * 硬件检测-ADAS - */ -class HardwareForADAS implements Serializable { - -} - diff --git a/modules/mogo-module-check/src/main/java/com/mogo/module/check/view/CheckActivity.java b/modules/mogo-module-check/src/main/java/com/mogo/module/check/view/CheckActivity.java index 13112b4fff..ce71c28a94 100644 --- a/modules/mogo-module-check/src/main/java/com/mogo/module/check/view/CheckActivity.java +++ b/modules/mogo-module-check/src/main/java/com/mogo/module/check/view/CheckActivity.java @@ -62,6 +62,8 @@ public class CheckActivity extends AppCompatActivity { software(); //硬件 hardware(); + //根据以上4个结果插入第一个元素 + usualTitle(); mRecyclerView = findViewById(R.id.check_list); mRecyclerView.setAdapter(new CheckAdapter(context, dataArrayList)); @@ -73,6 +75,18 @@ public class CheckActivity extends AppCompatActivity { } + /** + * 自动驾驶是否存在风险 + */ + private void usualTitle() { + ArrayList list = new ArrayList(1); + CheckItemInfo info = new CheckItemInfo(); + info.setUsual(false); + info.setStyle(CheckItemInfo.CheckAdapterStyleEnum.ITEM_TYPE_CHECK_TITLE); + list.add(info); + dataArrayList.add(0,list); + } + /** * @param context * @return 当前应用的版本名称 @@ -152,25 +166,25 @@ public class CheckActivity extends AppCompatActivity { CheckItemInfo.DetailItem netItem = new CheckItemInfo.DetailItem(); netItem.setTitle("网络状态"); netItem.setValue(mSignalStrength); - itemInfo.setItemList(netItem); + yingyan.setItemList(netItem); CheckItemInfo.DetailItem batteryItem = new CheckItemInfo.DetailItem(); batteryItem.setTitle("电池状态"); batteryItem.setValue(String.valueOf(battery)); - itemInfo.setItemList(batteryItem); + yingyan.setItemList(batteryItem); CheckItemInfo.DetailItem cpuItem = new CheckItemInfo.DetailItem(); cpuItem.setTitle("CPU占比"); cpuItem.setValue(String.valueOf(cpu)); - itemInfo.setItemList(cpuItem); + yingyan.setItemList(cpuItem); CheckItemInfo.DetailItem memoryItem = new CheckItemInfo.DetailItem(); memoryItem.setTitle("内存占比"); memoryItem.setValue(String.valueOf(memory)); - itemInfo.setItemList(cpuItem); - + yingyan.setItemList(cpuItem); arrayList.add(yingyan); + dataArrayList.add(arrayList); } @@ -270,6 +284,7 @@ public class CheckActivity extends AppCompatActivity { * 9、路由器 */ public void hardware() { + ArrayList list = new ArrayList(); CheckItemInfo itemInfo = new CheckItemInfo(); itemInfo.setTitle("(下面 1 项存在异常)"); itemInfo.setUsual(false); @@ -323,6 +338,8 @@ public class CheckActivity extends AppCompatActivity { luyou.setTitle("路由器"); luyou.setValue("正常"); itemInfo.setItemList(luyou); + list.add(itemInfo); + dataArrayList.add(list); } diff --git a/modules/mogo-module-check/src/main/java/com/mogo/module/check/view/CheckAdapter.java b/modules/mogo-module-check/src/main/java/com/mogo/module/check/view/CheckAdapter.java index b9d946cd67..e460a9eb02 100644 --- a/modules/mogo-module-check/src/main/java/com/mogo/module/check/view/CheckAdapter.java +++ b/modules/mogo-module-check/src/main/java/com/mogo/module/check/view/CheckAdapter.java @@ -1,12 +1,19 @@ package com.mogo.module.check.view; import android.content.Context; +import android.util.Log; import android.view.LayoutInflater; +import android.view.View; import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.TextView; import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; +import com.mogo.module.check.R; +import com.mogo.module.check.model.CheckItemInfo; + import java.util.ArrayList; /** @@ -16,18 +23,84 @@ import java.util.ArrayList; */ public class CheckAdapter extends RecyclerView.Adapter { + private static final String TAG = "CheckActivity"; LayoutInflater mLayoutInflater; ArrayList dataArrayList; - public CheckAdapter(@NonNull Context context, @NonNull ArrayList checkArray){ + public CheckAdapter(@NonNull Context context, @NonNull ArrayList checkArray) { mLayoutInflater = LayoutInflater.from(context); dataArrayList = checkArray; + Log.d(TAG, dataArrayList.toString()); + } + + @Override + public int getItemViewType(int position) { + if (position == 0) { + return CheckItemInfo.CheckAdapterStyleEnum.ITEM_TYPE_CHECK_TITLE; + + } else if (position == 4) { + return CheckItemInfo.CheckAdapterStyleEnum.ITEM_TYPE_CHECK_IMAGE; + } + return CheckItemInfo.CheckAdapterStyleEnum.ITEM_TYPE_CHECK_LIST; } @NonNull @Override public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { - return null; + if (viewType == CheckItemInfo.CheckAdapterStyleEnum.ITEM_TYPE_CHECK_TITLE) { + View v = mLayoutInflater.inflate(R.layout.check_titel, parent, + false); + CheckTitleViewHolder holder = new CheckTitleViewHolder(v); + return holder; + } + if (viewType == CheckItemInfo.CheckAdapterStyleEnum.ITEM_TYPE_CHECK_IMAGE) { + View v = mLayoutInflater.inflate(R.layout.check_hardware, parent, + false); + CheckImage holder = new CheckImage(v); + return holder; + } + View v = mLayoutInflater.inflate(R.layout.check_list, parent, + false); + CheckListViewHolder holder = new CheckListViewHolder(v); + return holder; + } + + /** + * 顶部view列表 + */ + class CheckTitleViewHolder extends RecyclerView.ViewHolder { + private ImageView errorImage; + private TextView mTextView; + + public CheckTitleViewHolder(@NonNull View itemView) { + super(itemView); +// errorImage = itemView.findViewById(R.id.error_image); + } + } + + /** + * 顶部view列表 + */ + class CheckListViewHolder extends RecyclerView.ViewHolder { + private ImageView errorImage; + private TextView mTextView; + + public CheckListViewHolder(@NonNull View itemView) { + super(itemView); +// errorImage = itemView.findViewById(R.id.error_image); + } + } + + /** + * 顶部view列表 + */ + class CheckImage extends RecyclerView.ViewHolder { + private ImageView mImageView; + + public CheckImage(@NonNull View itemView) { + super(itemView); +// errorImage = itemView.findViewById(R.id.error_image); + } } @Override @@ -37,6 +110,8 @@ public class CheckAdapter extends RecyclerView.Adapter @Override public int getItemCount() { - return 0; + return 5; } + + } diff --git a/modules/mogo-module-check/src/main/res/drawable/auto.png b/modules/mogo-module-check/src/main/res/drawable/auto.png new file mode 100644 index 0000000000..4e284d9e32 Binary files /dev/null and b/modules/mogo-module-check/src/main/res/drawable/auto.png differ diff --git a/modules/mogo-module-check/src/main/res/drawable/camera_unusual.png b/modules/mogo-module-check/src/main/res/drawable/camera_unusual.png new file mode 100644 index 0000000000..7ff9dda063 Binary files /dev/null and b/modules/mogo-module-check/src/main/res/drawable/camera_unusual.png differ diff --git a/modules/mogo-module-check/src/main/res/drawable/camera_usual.png b/modules/mogo-module-check/src/main/res/drawable/camera_usual.png new file mode 100644 index 0000000000..aff0548ccc Binary files /dev/null and b/modules/mogo-module-check/src/main/res/drawable/camera_usual.png differ diff --git a/modules/mogo-module-check/src/main/res/drawable/jiaojiguang_usual.png b/modules/mogo-module-check/src/main/res/drawable/jiaojiguang_usual.png new file mode 100644 index 0000000000..54329fe739 Binary files /dev/null and b/modules/mogo-module-check/src/main/res/drawable/jiaojiguang_usual.png differ diff --git a/modules/mogo-module-check/src/main/res/drawable/luyouqi_unusual.png b/modules/mogo-module-check/src/main/res/drawable/luyouqi_unusual.png new file mode 100644 index 0000000000..0177872fdb Binary files /dev/null and b/modules/mogo-module-check/src/main/res/drawable/luyouqi_unusual.png differ diff --git a/modules/mogo-module-check/src/main/res/drawable/luyouqi_usual.png b/modules/mogo-module-check/src/main/res/drawable/luyouqi_usual.png new file mode 100644 index 0000000000..a4fb0c4188 Binary files /dev/null and b/modules/mogo-module-check/src/main/res/drawable/luyouqi_usual.png differ diff --git a/modules/mogo-module-check/src/main/res/drawable/obu_unusual.png b/modules/mogo-module-check/src/main/res/drawable/obu_unusual.png new file mode 100644 index 0000000000..1a616ac4e4 Binary files /dev/null and b/modules/mogo-module-check/src/main/res/drawable/obu_unusual.png differ diff --git a/modules/mogo-module-check/src/main/res/drawable/oub_usual.png b/modules/mogo-module-check/src/main/res/drawable/oub_usual.png new file mode 100644 index 0000000000..ebe65505fe Binary files /dev/null and b/modules/mogo-module-check/src/main/res/drawable/oub_usual.png differ diff --git a/modules/mogo-module-check/src/main/res/drawable/pad_unusual.png b/modules/mogo-module-check/src/main/res/drawable/pad_unusual.png new file mode 100644 index 0000000000..1615d021e4 Binary files /dev/null and b/modules/mogo-module-check/src/main/res/drawable/pad_unusual.png differ diff --git a/modules/mogo-module-check/src/main/res/drawable/rtk_unusual.png b/modules/mogo-module-check/src/main/res/drawable/rtk_unusual.png new file mode 100644 index 0000000000..0f8112ef85 Binary files /dev/null and b/modules/mogo-module-check/src/main/res/drawable/rtk_unusual.png differ diff --git a/modules/mogo-module-check/src/main/res/drawable/rtk_usual.png b/modules/mogo-module-check/src/main/res/drawable/rtk_usual.png new file mode 100644 index 0000000000..c4c7983c16 Binary files /dev/null and b/modules/mogo-module-check/src/main/res/drawable/rtk_usual.png differ diff --git a/modules/mogo-module-check/src/main/res/drawable/yingyan.png b/modules/mogo-module-check/src/main/res/drawable/yingyan.png new file mode 100644 index 0000000000..e9b13a2082 Binary files /dev/null and b/modules/mogo-module-check/src/main/res/drawable/yingyan.png differ diff --git a/modules/mogo-module-check/src/main/res/drawable/zhujiguang_unusual.png b/modules/mogo-module-check/src/main/res/drawable/zhujiguang_unusual.png new file mode 100644 index 0000000000..bc0460b8c6 Binary files /dev/null and b/modules/mogo-module-check/src/main/res/drawable/zhujiguang_unusual.png differ diff --git a/modules/mogo-module-check/src/main/res/drawable/zhujiguang_usual.png b/modules/mogo-module-check/src/main/res/drawable/zhujiguang_usual.png new file mode 100644 index 0000000000..12bc7f3f0f Binary files /dev/null and b/modules/mogo-module-check/src/main/res/drawable/zhujiguang_usual.png differ diff --git a/modules/mogo-module-check/src/main/res/layout/check_list.xml b/modules/mogo-module-check/src/main/res/layout/check_list.xml new file mode 100644 index 0000000000..1633696ad1 --- /dev/null +++ b/modules/mogo-module-check/src/main/res/layout/check_list.xml @@ -0,0 +1,53 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/mogo-module-check/src/main/res/layout/check_titel.xml b/modules/mogo-module-check/src/main/res/layout/check_titel.xml new file mode 100644 index 0000000000..2233532ac7 --- /dev/null +++ b/modules/mogo-module-check/src/main/res/layout/check_titel.xml @@ -0,0 +1,27 @@ + + + + + + + \ No newline at end of file