2.2.9发布

master
hwf453 1 year ago
parent 3cd712eafe
commit 4895991f74

@ -11,8 +11,8 @@ android {
applicationId "com.rehome.zhdcoa" applicationId "com.rehome.zhdcoa"
minSdk 24 minSdk 24
targetSdk 34 targetSdk 34
versionCode 12 versionCode 13
versionName "2.2.8" versionName "2.2.9"
multiDexEnabled true multiDexEnabled true
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
//authorities //authorities
@ -125,6 +125,7 @@ dependencies {
implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.30' implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.30'
implementation files('../libs/poi-3.9-20121203.jar') implementation files('../libs/poi-3.9-20121203.jar')
implementation files('../libs/poi-scratchpad-3.9-20121203.jar') implementation files('../libs/poi-scratchpad-3.9-20121203.jar')
implementation 'androidx.activity:activity:1.8.0'
testImplementation 'junit:junit:4.13.1' testImplementation 'junit:junit:4.13.1'
androidTestImplementation 'androidx.test.ext:junit:1.1.2' androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'

@ -1129,6 +1129,10 @@
android:name=".ui.activity.WorkRiskListActivity" android:name=".ui.activity.WorkRiskListActivity"
android:screenOrientation="portrait" android:screenOrientation="portrait"
android:windowSoftInputMode="adjustResize|stateHidden" /> <!-- 作业风险清单 --> android:windowSoftInputMode="adjustResize|stateHidden" /> <!-- 作业风险清单 -->
<activity
android:name=".ui.activity.WorkRiskListTipActivity"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustResize|stateHidden" /> <!-- 作业风险清单二级页面提示 -->
<activity <activity
android:name=".ui.activity.ActivityFactoryWorkerInfoStatistics" android:name=".ui.activity.ActivityFactoryWorkerInfoStatistics"
android:screenOrientation="portrait" android:screenOrientation="portrait"

@ -1,6 +1,9 @@
package com.rehome.zhdcoa.adapter; package com.rehome.zhdcoa.adapter;
import android.content.Context; import android.content.Context;
import android.graphics.Color;
import android.text.Html;
import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
@ -28,8 +31,14 @@ public class WorkRiskLevelListAdapter extends CommonAdapter<WorkRiskLevelListBea
if (item != null) { if (item != null) {
viewHolder.setText(R.id.tv_xh, String.valueOf(position+1)); viewHolder.setText(R.id.tv_xh, String.valueOf(position+1));
viewHolder.setText(R.id.tv_paiHao, item.getCode()); viewHolder.setText(R.id.tv_paiHao, item.getCode());
viewHolder.setText(R.id.tv_content, item.getContent()); //viewHolder.setText(R.id.tv_content, item.getContent());
viewHolder.setText(R.id.tv_level, item.getLevel()); viewHolder.setText(R.id.tv_level, item.getLevel());
String tv_precaution = "<u color='#0099ff'>" + item.getContent() +"</u>";
TextView tv_content =viewHolder.getView(R.id.tv_content);
tv_content.setText(Html.fromHtml(tv_precaution));
tv_content.setTextColor(Color.parseColor("#0099ff"));
} }
} }
} }

@ -0,0 +1,37 @@
package com.rehome.zhdcoa.adapter;
import static android.text.Html.FROM_HTML_MODE_LEGACY;
import android.content.Context;
import android.text.Html;
import android.widget.TextView;
import com.rehome.zhdcoa.R;
import com.rehome.zhdcoa.bean.WorkRiskLevelTipListBean;
import java.util.List;
public class WorkRiskListTipAdapter extends CommonAdapter<WorkRiskLevelTipListBean> {
private final Context context;
private List<WorkRiskLevelTipListBean> datas;
public WorkRiskListTipAdapter(Context context, List<WorkRiskLevelTipListBean> datas) {
super(context, R.layout.adapter_item_work_risk_list_tip, datas);
this.context = context;
this.datas = datas;
}
@Override
protected void convert(ViewHolder viewHolder, WorkRiskLevelTipListBean item, int position) {
if (item != null) {
viewHolder.setText(R.id.tv_xh, String.valueOf(position+1));
viewHolder.setText(R.id.tv_weiHai, item.getType());
viewHolder.setText(R.id.tv_yuFang, item.getPrecaution());
// String tv_precaution = "<u> color='#999999'>" + item.getPrecaution() +"</u>";
// TextView tv =viewHolder.getView(R.id.tv_yuFang);
// tv.setText(Html.fromHtml(tv_precaution));
}
}
}

@ -0,0 +1,25 @@
package com.rehome.zhdcoa.bean;
import java.util.List;
public class HazardListBean {
private String type;
private List<String> precautionList;
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public List<String> getPrecautionList() {
return precautionList;
}
public void setPrecautionList(List<String> precautionList) {
this.precautionList = precautionList;
}
}

@ -31,6 +31,7 @@ public class WorkRiskLevelListBean extends AIBaseBean{
private String id; private String id;
//工作票状态 //工作票状态
private String status; private String status;
private List<HazardListBean> hazardList;
public String getCode() { public String getCode() {
return code; return code;
@ -79,5 +80,13 @@ public class WorkRiskLevelListBean extends AIBaseBean{
public void setStatus(String status) { public void setStatus(String status) {
this.status = status; this.status = status;
} }
public List<HazardListBean> getHazardList() {
return hazardList;
}
public void setHazardList(List<HazardListBean> hazardList) {
this.hazardList = hazardList;
}
} }
} }

@ -0,0 +1,22 @@
package com.rehome.zhdcoa.bean;
public class WorkRiskLevelTipListBean {
private String type;
private String precaution;
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public String getPrecaution() {
return precaution;
}
public void setPrecaution(String precaution) {
this.precaution = precaution;
}
}

@ -1,10 +1,13 @@
package com.rehome.zhdcoa.ui.activity package com.rehome.zhdcoa.ui.activity
import android.content.Intent
import android.view.View import android.view.View
import android.widget.AdapterView
import com.rehome.zhdcoa.Contans import com.rehome.zhdcoa.Contans
import com.rehome.zhdcoa.R import com.rehome.zhdcoa.R
import com.rehome.zhdcoa.adapter.WorkRiskLevelListAdapter import com.rehome.zhdcoa.adapter.WorkRiskLevelListAdapter
import com.rehome.zhdcoa.base.BaseActivityOaToolbarViewBinding import com.rehome.zhdcoa.base.BaseActivityOaToolbarViewBinding
import com.rehome.zhdcoa.bean.HazardListBean
import com.rehome.zhdcoa.bean.WorkRiskLevelListBean import com.rehome.zhdcoa.bean.WorkRiskLevelListBean
import com.rehome.zhdcoa.databinding.ActivityWorkRiskListBinding import com.rehome.zhdcoa.databinding.ActivityWorkRiskListBinding
import com.rehome.zhdcoa.utils.AuthenticationLoginAIUtils import com.rehome.zhdcoa.utils.AuthenticationLoginAIUtils
@ -49,6 +52,20 @@ class WorkRiskListActivity : BaseActivityOaToolbarViewBinding<ActivityWorkRiskLi
//binding.lv.addHeaderView(headView, null, false) //binding.lv.addHeaderView(headView, null, false)
binding.lv.adapter = mAdapter binding.lv.adapter = mAdapter
binding.lv.onItemClickListener =
AdapterView.OnItemClickListener { _: AdapterView<*>?, _: View?, position: Int, _: Long ->
val item = datas[position]
if(item.hazardList!=null&&item.hazardList.size>0){
//进入风险提示页面
val intent = Intent(context, WorkRiskListTipActivity::class.java)
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_SINGLE_TOP)
intent.putExtra("hazardList", GsonUtils.GsonString(item.hazardList))
startActivity(intent)
}else{
showToast("无清单提示数据")
}
}
//格式化日期的对象(转化成习惯的时间格式) //格式化日期的对象(转化成习惯的时间格式)
val sdFormat = SimpleDateFormat("yyyy.MM.dd") val sdFormat = SimpleDateFormat("yyyy.MM.dd")
//静态方法getInstance()使用默认时区和语言环境获得一个日历。 //静态方法getInstance()使用默认时区和语言环境获得一个日历。
@ -128,6 +145,5 @@ class WorkRiskListActivity : BaseActivityOaToolbarViewBinding<ActivityWorkRiskLi
} }
}) })
} }
} }

@ -0,0 +1,71 @@
package com.rehome.zhdcoa.ui.activity
import android.view.View
import com.google.gson.Gson
import com.google.gson.reflect.TypeToken
import com.rehome.zhdcoa.R
import com.rehome.zhdcoa.adapter.WorkRiskListTipAdapter
import com.rehome.zhdcoa.base.BaseActivityOaToolbarViewBinding
import com.rehome.zhdcoa.bean.HazardListBean
import com.rehome.zhdcoa.bean.WorkRiskLevelTipListBean
import com.rehome.zhdcoa.databinding.ActivityWorkRiskListTipBinding
import com.rehome.zhdcoa.utils.GsonUtils
/**
* Create By HuangWenFei
* 创建日期2024-04-02 14:34
* 描述每日作业风险清单二级页面提示
*/
class WorkRiskListTipActivity : BaseActivityOaToolbarViewBinding<ActivityWorkRiskListTipBinding>() {
private lateinit var headView: View
private var datas: MutableList<WorkRiskLevelTipListBean> = mutableListOf()
private lateinit var mAdapter: WorkRiskListTipAdapter
override fun getViewBinding() = ActivityWorkRiskListTipBinding.inflate(layoutInflater)
override fun getToolbar() = binding.toolbarView.toolbar
override fun initView() {
initToolbar("危害后果及防范措施")
setLeftOnClickListener {
finish()
}
binding.lv.emptyView = binding.tvNodata
headView = View.inflate(this, R.layout.item_work_risk_list, null)
mAdapter = WorkRiskListTipAdapter(this,datas);
binding.lv.adapter = mAdapter
}
override fun initData() {
datas.clear()
val hazardListStr = intent.getStringExtra("hazardList")!!
val gson = Gson();
var hazardList: MutableList<HazardListBean> = gson.fromJson(hazardListStr,object : TypeToken<List<HazardListBean?>?>() {}.type)
if(hazardList!=null){
// showLog(hazardList.size.toString())
// showLog(hazardListStr)
// showLog(GsonUtils.GsonString(hazardList))
for (hazardListBean in hazardList) {
//showLog("item${hazardListBean.type}")
//showLog("item${hazardListBean.precautionList[0]}")
if(hazardListBean.precautionList!=null&&hazardListBean.precautionList.size>0){
for (item in hazardListBean.precautionList) {// 适合不需要下标的场景,例如直接显示集合数据,而且展示样式都一样
//showLog("$item")
var workRiskLevelTipListBean = WorkRiskLevelTipListBean()
workRiskLevelTipListBean.type = hazardListBean.type
workRiskLevelTipListBean.precaution = item
datas.add(workRiskLevelTipListBean)
}
}
}
mAdapter.notifyDataSetChanged()
}
}
}

@ -74,7 +74,7 @@ class WztpblScActivity : BaseActivityAutoToolbarViewBinding<ActivityWztpblScBind
position: Int, position: Int,
id: Long id: Long
) { ) {
Log.i("app","子货架切换") showLog("子货架切换")
if(binding.spinnerParent.selectedItem!=null&&binding.spinnerSon.selectedItem!=null){ if(binding.spinnerParent.selectedItem!=null&&binding.spinnerSon.selectedItem!=null){
getWzNoImgData() getWzNoImgData()
} }
@ -114,18 +114,18 @@ class WztpblScActivity : BaseActivityAutoToolbarViewBinding<ActivityWztpblScBind
private fun getSpinnerParentData() { private fun getSpinnerParentData() {
val url: String = Contans.IP + Contans.GET_SPINNER_PARENT_DATA_URL val url: String = Contans.IP + Contans.GET_SPINNER_PARENT_DATA_URL
Log.i("app", url) showLog( url)
val request = NoHttp.createStringRequest(url, RequestMethod.GET) val request = NoHttp.createStringRequest(url, RequestMethod.GET)
NohttpUtils.getInstance().add(this, 0, request, object : HttpListener<String> { NohttpUtils.getInstance().add(this, 0, request, object : HttpListener<String> {
override fun onSucceed(what: Int, response: Response<String>?) { override fun onSucceed(what: Int, response: Response<String>?) {
if (response != null) { if (response != null) {
val result = response.get() val result = response.get()
Log.i("app", result) showLog( result)
val bean = GsonUtils.GsonToBean(result, WarehouseDropdownBean::class.java) val bean = GsonUtils.GsonToBean(result, WarehouseDropdownBean::class.java)
if (bean != null && bean.total != "0") { if (bean != null && bean.total != "0") {
spinnerParent.clear() spinnerParent.clear()
spinnerParent.addAll(bean.rows) spinnerParent.addAll(bean.rows)
Log.i("app", "size:" + bean.rows.count()) showLog("size:" + bean.rows.count())
// 在我们的这个位置的话创建我们的数组 // 在我们的这个位置的话创建我们的数组
// 在我们的这个位置的话创建我们的数组 // 在我们的这个位置的话创建我们的数组
@ -163,18 +163,18 @@ class WztpblScActivity : BaseActivityAutoToolbarViewBinding<ActivityWztpblScBind
private fun getSpinnerSonData(binnum: String) { private fun getSpinnerSonData(binnum: String) {
val url: String = Contans.IP + Contans.GET_SPINNER_SON_DATA_URL + binnum val url: String = Contans.IP + Contans.GET_SPINNER_SON_DATA_URL + binnum
Log.i("app", url) showLog( url)
val request = NoHttp.createStringRequest(url, RequestMethod.GET) val request = NoHttp.createStringRequest(url, RequestMethod.GET)
NohttpUtils.getInstance().add(this, 0, request, object : HttpListener<String> { NohttpUtils.getInstance().add(this, 0, request, object : HttpListener<String> {
override fun onSucceed(what: Int, response: Response<String>?) { override fun onSucceed(what: Int, response: Response<String>?) {
if (response != null) { if (response != null) {
val result = response.get() val result = response.get()
Log.i("app", result) showLog( result)
val bean = GsonUtils.GsonToBean(result, WarehouseDropdownBean::class.java) val bean = GsonUtils.GsonToBean(result, WarehouseDropdownBean::class.java)
if (bean != null && bean.total != "0") { if (bean != null && bean.total != "0") {
spinnerSon.clear() spinnerSon.clear()
spinnerSon.addAll(bean.rows) spinnerSon.addAll(bean.rows)
Log.i("app", "size:" + bean.rows.count()) showLog("size:" + bean.rows.count())
// 在我们的这个位置的话创建我们的数组 // 在我们的这个位置的话创建我们的数组
val arraySon = arrayOfNulls<String>(spinnerSon.size) val arraySon = arrayOfNulls<String>(spinnerSon.size)
@ -233,19 +233,19 @@ class WztpblScActivity : BaseActivityAutoToolbarViewBinding<ActivityWztpblScBind
val url: String = val url: String =
Contans.IP + Contans.GET_WZ_NO_IMG_DATA_URL + parent + "&ZHJ=" + son + "&ITEMNUM=" + binding.etHgtm.text.toString() Contans.IP + Contans.GET_WZ_NO_IMG_DATA_URL + parent + "&ZHJ=" + son + "&ITEMNUM=" + binding.etHgtm.text.toString()
.trim() .trim()
Log.i("app", url) showLog( url)
val request = NoHttp.createStringRequest(url, RequestMethod.GET) val request = NoHttp.createStringRequest(url, RequestMethod.GET)
NohttpUtils.getInstance().add(this, 0, request, object : HttpListener<String> { NohttpUtils.getInstance().add(this, 0, request, object : HttpListener<String> {
override fun onSucceed(what: Int, response: Response<String>?) { override fun onSucceed(what: Int, response: Response<String>?) {
if (response != null) { if (response != null) {
val result = response.get() val result = response.get()
Log.i("app", result) showLog( result)
val bean = GsonUtils.GsonToBean(result, WarehouseHuoJiaBean::class.java) val bean = GsonUtils.GsonToBean(result, WarehouseHuoJiaBean::class.java)
if (bean != null && bean.total != "0") { if (bean != null && bean.total != "0") {
warehouseHuoJiaList.clear() warehouseHuoJiaList.clear()
warehouseHuoJiaList.addAll(bean.rows) warehouseHuoJiaList.addAll(bean.rows)
wztpblAdapter.notifyDataSetChanged() wztpblAdapter.notifyDataSetChanged()
Log.i("app", "size:" + bean.rows.count()) showLog( "size:" + bean.rows.count())
}else{ }else{
warehouseHuoJiaList.clear() warehouseHuoJiaList.clear()
wztpblAdapter.notifyDataSetChanged() wztpblAdapter.notifyDataSetChanged()

@ -1048,6 +1048,8 @@ public class WztpblScDetailActivity extends BaseActivityOaToolbarViewBinding<Act
try { try {
Bitmap stBitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(uriTakePicOutputSt)); Bitmap stBitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(uriTakePicOutputSt));
stEndName = stFileName; stEndName = stFileName;
showLog("------");
showLog(stEndName);
binding.ivSt.setImageBitmap(stBitmap); binding.ivSt.setImageBitmap(stBitmap);
itemWztp.setXlturl(null); itemWztp.setXlturl(null);
} catch (Exception e) { } catch (Exception e) {
@ -1058,6 +1060,8 @@ public class WztpblScDetailActivity extends BaseActivityOaToolbarViewBinding<Act
try { try {
Bitmap fjtBitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(uriTakePicOutputFjt)); Bitmap fjtBitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(uriTakePicOutputFjt));
fjtEndName = fjtFileName; fjtEndName = fjtFileName;
showLog("------");
showLog(fjtEndName);
binding.ivFjt.setImageBitmap(fjtBitmap); binding.ivFjt.setImageBitmap(fjtBitmap);
itemWztp.setImgurl(null); itemWztp.setImgurl(null);
} catch (Exception e) { } catch (Exception e) {

@ -67,9 +67,9 @@ public class AuthenticationLoginAIUtils {
@Override @Override
public void onSucceed(int what, Response<String> response) { public void onSucceed(int what, Response<String> response) {
//showLog("----------------"); showLog("----------------");
String result = response.get(); String result = response.get();
//showLog(result); showLog(result);
String jsonDecode = RSAUtils.decryptBASE64StrClient(result); String jsonDecode = RSAUtils.decryptBASE64StrClient(result);
if (TextUtils.isEmpty(jsonDecode)) { if (TextUtils.isEmpty(jsonDecode)) {
@ -140,6 +140,7 @@ public class AuthenticationLoginAIUtils {
@Override @Override
public void onFailed(int what, Response<String> response) { public void onFailed(int what, Response<String> response) {
showLog("onFailed");
listener.onAuthenticationSuccess(false, ""); listener.onAuthenticationSuccess(false, "");
} }
}); });

@ -323,6 +323,7 @@ public class GridViewDialog extends Dialog {
break; break;
} }
if (intent != null) { if (intent != null) {
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|Intent.FLAG_ACTIVITY_SINGLE_TOP);
getContext().startActivity(intent); getContext().startActivity(intent);
} }
dismiss(); dismiss();

@ -0,0 +1,45 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".ui.activity.WorkRiskListTipActivity">
<include
android:id="@+id/toolbarView"
layout="@layout/layout_base" />
<include
android:id="@+id/item_head"
layout="@layout/item_work_risk_list_tip"
android:layout_width="match_parent"
android:layout_marginStart="10px"
android:layout_marginEnd="10px"
android:layout_marginTop="10dp"
android:layout_height="wrap_content" />
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginStart="10px"
android:layout_marginEnd="10px"
android:layout_marginBottom="20dp"
android:layout_weight="1">
<ListView
android:id="@+id/lv"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="#00000000"
android:dividerHeight="0px"/>
<TextView
android:id="@+id/tv_nodata"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:textColor="@color/viewfinder_mask"
android:gravity="center"
android:text="暂无数据"/>
</FrameLayout>
</LinearLayout>

@ -0,0 +1,75 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:minHeight="62px"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="60px">
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="#524658" />
<TextView
android:id="@+id/tv_xh"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="0.5"
android:gravity="center"
android:text="序号" />
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="#524658" />
<TextView
android:id="@+id/tv_weiHai"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1.0"
android:gravity="center"
android:text="危害后果" />
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="#524658" />
<TextView
android:id="@+id/tv_yuFang"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center|start"
android:layout_marginLeft="10px"
android:layout_marginEnd="10px"
android:layout_weight="2.4"
android:text="预防措施" />
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="#524658" />
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="#524658" />
</LinearLayout>

@ -0,0 +1,81 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:minHeight="62px"
android:orientation="vertical">
<View
android:id="@+id/head"
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="#524658"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="60px">
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="#524658" />
<TextView
android:id="@+id/tv_xh"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="0.5"
android:gravity="center"
android:text="序号" />
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="#524658" />
<TextView
android:id="@+id/tv_paiHao"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1.0"
android:gravity="center"
android:text="危害后果" />
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="#524658" />
<TextView
android:id="@+id/tv_qymc"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center"
android:layout_marginLeft="10px"
android:layout_marginEnd="10px"
android:layout_weight="2.4"
android:text="预防措施" />
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="#524658" />
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="#524658" />
</LinearLayout>
Loading…
Cancel
Save