From dfd4367d5c4a64743b2a842602a94578b993fdde Mon Sep 17 00:00:00 2001
From: lizhanwei <Dana_Lee1016@126.com>
Date: 星期三, 22 四月 2020 09:27:15 +0800
Subject: [PATCH] 完成所有页面基础,还需完善细节
---
app/src/main/java/safeluck/drive/evaluation/fragment/BaseDatasFragment.java | 119 +++++++++++++++++++++++++++++++++++------------------------
1 files changed, 71 insertions(+), 48 deletions(-)
diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/BaseDatasFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/BaseDatasFragment.java
index 4413c8a..40c1934 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/BaseDatasFragment.java
+++ b/app/src/main/java/safeluck/drive/evaluation/fragment/BaseDatasFragment.java
@@ -2,8 +2,11 @@
import android.content.Context;
import android.content.Intent;
+import android.graphics.Color;
import android.net.Uri;
import android.os.Bundle;
+
+import androidx.annotation.IdRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.lifecycle.Observer;
@@ -11,6 +14,10 @@
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
+import android.text.SpannableString;
+import android.text.Spanned;
+import android.text.style.AbsoluteSizeSpan;
+import android.text.style.ForegroundColorSpan;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
@@ -43,9 +50,11 @@
import safeluck.drive.evaluation.DB.rtktb.RTKConfigViewModel;
import safeluck.drive.evaluation.MainActivity;
import safeluck.drive.evaluation.R;
+import safeluck.drive.evaluation.adapter.BaseDataInfoAdapter;
import safeluck.drive.evaluation.adapter.GpsInfoAdapter;
import safeluck.drive.evaluation.adapter.QuickAdapter;
import safeluck.drive.evaluation.adapter.WrapContentLinearLayoutManager;
+import safeluck.drive.evaluation.bean.BaseDataUIBean;
import safeluck.drive.evaluation.bean.ExamPlatformData;
import safeluck.drive.evaluation.bean.MCUInfo;
import safeluck.drive.evaluation.cEventCenter.CEventCenter;
@@ -67,6 +76,9 @@
private Gson gson = new Gson();
private RTKConfig mRtkConfig;
private AppStatus appStatus;
+ private SpannableString spannableString;
+ private String versionDes;
+ private String version;
private AppStatusViewModel appStatusViewModel;
private ICEventListener icEventListener = new ICEventListener() {
@Override
@@ -82,13 +94,21 @@
fields[i].setAccessible(true);
try {
if (fields[i].getName().equalsIgnoreCase("version")){
- String version = (String) fields[i].get(mcuInfo);
+ version= (String) fields[i].get(mcuInfo);
version = new String(BytesUtils.hexStringToBytes(version),"GBK");
- datas.add("鐗堟湰鍙凤細" + version+"#"+ BuildConfig.VERSION_NAME);
+ versionDes= "鐗堟湰鍙凤細";
+ version = version+"#"+ BuildConfig.VERSION_NAME;
+ version = versionDes+version;
+ spannableString = new SpannableString(version);
+ spannableString.setSpan(new AbsoluteSizeSpan(22),0,versionDes.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+ spannableString.setSpan(new ForegroundColorSpan(Color.parseColor("#A8AAA7")),0,versionDes.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+ spannableString.setSpan(new AbsoluteSizeSpan(28),versionDes.length()-1,version.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+ spannableString.setSpan(new ForegroundColorSpan(Color.parseColor("#FFFFFF")),versionDes.length()-1,version.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+ datas.add(new BaseDataUIBean( spannableString,R.mipmap.version_pic));
}else if(fields[i].getName().equalsIgnoreCase("sn")){
- datas.add( "璁惧搴忓垪鍙凤細" + fields[i].get(mcuInfo));
+ setitemInfo("璁惧搴忓垪鍙凤細", String.valueOf(fields[i].get(mcuInfo)),R.mipmap.device_sn);
}else if(fields[i].getName().equalsIgnoreCase("selftest")){
- datas.add( "鑷鐘舵�侊細" + fields[i].get(mcuInfo));
+ setitemInfo("鑷鐘舵�侊細", String.valueOf(fields[i].get(mcuInfo)),R.mipmap.auto_check_status);
}
} catch (IllegalAccessException e) {
@@ -102,16 +122,17 @@
public void run() {
if (mRtkConfig != null){
- datas.add("鐪両D锛�"+mRtkConfig.getProvince());
- datas.add("甯侷D锛�"+mRtkConfig.getCity());
- datas.add("RTK骞冲彴鍦板潃锛�"+mRtkConfig.getIp()+":"+mRtkConfig.getPort());
+ setitemInfo("鐪両D锛�", String.valueOf(mRtkConfig.getProvince()),R.mipmap.province_id);
+ setitemInfo("甯侷D锛�", String.valueOf(mRtkConfig.getCity()),R.mipmap.province_id);
+ setitemInfo("RTK骞冲彴鍦板潃锛�", mRtkConfig.getIp()+":"+mRtkConfig.getPort(),R.mipmap.platform_pic);
+ setitemInfo("鑰冭瘯骞冲彴鍦板潃锛�",ExamPlatformData.getInstance().getPlatformIP()
+ +":"+ExamPlatformData.getInstance().getPlatformPort(),R.mipmap.platform_pic);
- datas.add("鑰冭瘯骞冲彴鍦板潃锛�"+ExamPlatformData.getInstance().getPlatformIP()+":"+ExamPlatformData.getInstance().getPlatformPort());
}
if (appStatus != null){
- datas.add("RTK骞冲彴鐘舵�侊細"+(appStatus.getRtk_connect_status()==1?(appStatus.getRtk_login_code()==0?"宸茬櫥褰�":"鏈櫥褰�"):"鏈繛鎺�"));
- datas.add("鑰冭瘯骞冲彴鐘舵�侊細"+ExamPlatformData.getInstance().getExamplatformStatusStr(ExamPlatformData.getInstance().getExamplatformStatus()));
+ setitemInfo("RTK骞冲彴鐘舵�侊細", appStatus.getRtk_connect_status()==1?(appStatus.getRtk_login_code()==0?"宸茬櫥褰�":"鏈櫥褰�"):"鏈繛鎺�",R.mipmap.province_id);
+ setitemInfo("鑰冭瘯骞冲彴鐘舵�侊細", ExamPlatformData.getInstance().getExamplatformStatusStr(ExamPlatformData.getInstance().getExamplatformStatus()),R.mipmap.province_id);
}
gpsInfoAdapter.addAll(datas);
}
@@ -122,16 +143,25 @@
}
};
+ private void setitemInfo(String des, String str, int id){
+ versionDes=des;
+ version= versionDes+str;
+ spannableString = new SpannableString(version);
+ spannableString.setSpan(new AbsoluteSizeSpan(22),0,versionDes.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+ spannableString.setSpan(new ForegroundColorSpan(Color.parseColor("#A8AAA7")),0,versionDes.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+ spannableString.setSpan(new AbsoluteSizeSpan(28),versionDes.length()-1,version.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+ spannableString.setSpan(new ForegroundColorSpan(Color.parseColor("#FFFFFF")),versionDes.length()-1,version.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+ datas.add(new BaseDataUIBean( spannableString,id));
+ }
+
public static SupportFragment newInstance() {
return new BaseDatasFragment();
}
- private List<String> datas = new ArrayList<>();
- private RecyclerView recyclerView;
+ private List<BaseDataUIBean> datas = new ArrayList<>();
private ListView lv;
- private GpsInfoAdapter gpsInfoAdapter;
- private List<String> gpsinfos = new ArrayList<>();
+ private BaseDataInfoAdapter gpsInfoAdapter;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
@@ -145,53 +175,39 @@
View headView = inflater.inflate(R.layout.inspect_signal_head,null);
lv.addFooterView(footView);
lv.addHeaderView(headView);
- footView.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
-// SetArgumentsFragment setArgumentsFragment = findFragment(SetArgumentsFragment.class);
-// if (setArgumentsFragment == null){
-// setArgumentsFragment = SetArgumentsFragment.newInstance();
-// }
- ((BaseSettingFragment)getParentFragment()).startBrotherFragment(SetArgumentsFragment.newInstance());
-
- }
- });
- headView.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- ((BaseSettingFragment)getParentFragment()).startBrotherFragment(InspectSignalFragment.newInstance());
-
- }
- });
+ footView.setOnClickListener(v -> ((BaseSettingFragment)getParentFragment()).startBrotherFragment(SetArgumentsFragment.newInstance()));
+ headView.setOnClickListener(v -> ((BaseSettingFragment)getParentFragment()).startBrotherFragment(InspectSignalFragment.newInstance()));
RTKConfigViewModel rtkConfigViewModel= ViewModelProviders.of(this).get(RTKConfigViewModel.class);
- rtkConfigViewModel.getRTKConfig().observe(this, new Observer<RTKConfig>() {
- @Override
- public void onChanged(RTKConfig rtkConfig) {
- if (rtkConfig != null){
- Log.i(TAG, "RTKConfig Changed: "+rtkConfig.toString());
- mRtkConfig = rtkConfig;
- }
-
-
+ rtkConfigViewModel.getRTKConfig().observe(this, rtkConfig -> {
+ if (rtkConfig != null){
+ Log.i(TAG, "RTKConfig Changed: "+rtkConfig.toString());
+ mRtkConfig = rtkConfig;
}
+
+
});
appStatusViewModel = ViewModelProviders.of(this).get(AppStatusViewModel.class);
- appStatusViewModel.getAppStatus().observe(this, new Observer<AppStatus>() {
- @Override
- public void onChanged(AppStatus ppStatus) {
- if (ppStatus != null){
- appStatus = ppStatus;
- }
+ appStatusViewModel.getAppStatus().observe(this, ppStatus -> {
+ if (ppStatus != null){
+ appStatus = ppStatus;
}
});
return view;
}
private void initView(View view) {
+ Log.i(TAG,"currTopFragment="+getTopFragment().getClass().getSimpleName());
+ if (HomeFragment.class.getSimpleName().equals(getTopFragment().getClass().getSimpleName())){
+ ((MainActivity)_mActivity).viewtitle.setVisibility(View.GONE);
+ ((MainActivity)_mActivity).btn_return.setVisibility(View.GONE);
+ }else{
+ ((MainActivity)_mActivity).viewtitle.setVisibility(View.VISIBLE);
+ ((MainActivity)_mActivity).btn_return.setVisibility(View.VISIBLE);
+ }
lv = view.findViewById(R.id.lv_gpsinfo);
- gpsInfoAdapter = new GpsInfoAdapter(_mActivity);
+ gpsInfoAdapter = new BaseDataInfoAdapter(_mActivity);
lv.setAdapter(gpsInfoAdapter);
}
@@ -206,4 +222,11 @@
super.onDetach();
CEventCenter.onBindEvent(false,icEventListener,Constant.BIND_MCUINFO_TOPIC);
}
+
+ @Override
+ public void onDestroyView() {
+ super.onDestroyView();
+ ((MainActivity)_mActivity).viewtitle.setVisibility(View.GONE);
+ ((MainActivity)_mActivity).btn_return.setVisibility(View.GONE);
+ }
}
--
Gitblit v1.8.0