[6.2.6]运营面板整理
This commit is contained in:
@@ -97,23 +97,24 @@ class DriverMsgBoxBubbleView @JvmOverloads constructor(
|
||||
}
|
||||
} else if(category == MsgCategory.SYS_INFO){
|
||||
CallerMsgBoxEventListenerManager.invokeUpdateTipListener(true)
|
||||
//todo 过滤MAP系统异常报警
|
||||
} else if(category == MsgCategory.FM_INFO){
|
||||
CallerMsgBoxEventListenerManager.invokeUpdateTipListener(true)
|
||||
//属于停车警示(包括择机靠边停车、立即舒适停车、就地紧急停车)时,需要弹出消息气泡并伴有提示音
|
||||
val fmInfoMsg = msgBoxBean.bean as FMInfoMsg
|
||||
if(fmInfoMsg.policyCode == "FM_DP_PNC_CHOOSE_STOP" //择机靠边停车
|
||||
|| fmInfoMsg.policyCode == "FM_DP_COMFORTABLE_STOP" //立刻舒适停车
|
||||
|| fmInfoMsg.policyCode == "FM_DP_EMERGENCY_STOP" //就地紧急停车
|
||||
){
|
||||
//语音提示
|
||||
try {
|
||||
SoundPoolUtils.getSoundPool().playSoundWithRedId(context,R.raw.weak_net_tips)
|
||||
}catch (e: Exception){
|
||||
e.printStackTrace()
|
||||
if(FunctionBuildConfig.isTakeoverRemind){
|
||||
//属于停车警示(包括择机靠边停车、立即舒适停车、就地紧急停车)时,需要弹出消息气泡并伴有提示音
|
||||
val fmInfoMsg = msgBoxBean.bean as FMInfoMsg
|
||||
if(fmInfoMsg.policyCode == "FM_DP_PNC_CHOOSE_STOP" //择机靠边停车
|
||||
|| fmInfoMsg.policyCode == "FM_DP_COMFORTABLE_STOP" //立刻舒适停车
|
||||
|| fmInfoMsg.policyCode == "FM_DP_EMERGENCY_STOP" //就地紧急停车
|
||||
){
|
||||
//语音提示
|
||||
try {
|
||||
SoundPoolUtils.getSoundPool().playSoundWithRedId(context,R.raw.weak_net_tips)
|
||||
}catch (e: Exception){
|
||||
e.printStackTrace()
|
||||
}
|
||||
//展示消息
|
||||
showData(msgBoxBean)
|
||||
}
|
||||
//展示消息
|
||||
showData(msgBoxBean)
|
||||
}
|
||||
} else{
|
||||
if(msgBoxBean.sourceType == DataSourceType.SUMMARY){
|
||||
|
||||
@@ -73,6 +73,7 @@ import kotlinx.android.synthetic.main.view_sop_setting.view.scRunRedLightSop
|
||||
import kotlinx.android.synthetic.main.view_sop_setting.view.scShowBagRecordWindow
|
||||
import kotlinx.android.synthetic.main.view_sop_setting.view.scSpeedLimit
|
||||
import kotlinx.android.synthetic.main.view_sop_setting.view.scSweeperModeSwitch
|
||||
import kotlinx.android.synthetic.main.view_sop_setting.view.scTakeOverRemind
|
||||
import kotlinx.android.synthetic.main.view_sop_setting.view.scTrafficLight
|
||||
import kotlinx.android.synthetic.main.view_sop_setting.view.scV2ISwitch
|
||||
import kotlinx.android.synthetic.main.view_sop_setting.view.scV2NSwitch
|
||||
@@ -121,7 +122,9 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
mapSetting()
|
||||
//与车相关类设置
|
||||
vehicleSetting()
|
||||
//其他类别开关设置
|
||||
//美化模式类设置
|
||||
demoSetting()
|
||||
//业务类别开关设置
|
||||
otherSetting()
|
||||
}
|
||||
|
||||
@@ -445,17 +448,9 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
}
|
||||
|
||||
/**
|
||||
* 与车相关类设置
|
||||
* 美化模式类设置
|
||||
*/
|
||||
private fun vehicleSetting() {
|
||||
//绕障类功能
|
||||
scObstacleAvoidance.isChecked = FunctionBuildConfig.isDetouring
|
||||
scObstacleAvoidance.setOnCheckedChangeListener { _, isChecked ->
|
||||
hmiAction("SOP 绕障类功能开关, ", isChecked)
|
||||
CallerAutoPilotControlManager.sendDetouring(isChecked)
|
||||
FunctionBuildConfig.isDetouring = isChecked
|
||||
}
|
||||
|
||||
private fun demoSetting(){
|
||||
// 演示模式,上一次勾选的数据
|
||||
scDemoMode.isChecked = FunctionBuildConfig.isDemoMode
|
||||
scDemoMode.setOnCheckedChangeListener { compoundButton, isChecked ->
|
||||
@@ -480,6 +475,34 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
scDemoMode.isEnabled = false
|
||||
}
|
||||
|
||||
//是否展示被动触发的录包弹窗(自动驾驶下出现问题触发的录包)
|
||||
scShowBagRecordWindow.isChecked = FunctionBuildConfig.isShowBagRecordWindow
|
||||
scShowBagRecordWindow.setOnCheckedChangeListener { _, isChecked ->
|
||||
FunctionBuildConfig.isShowBagRecordWindow = isChecked
|
||||
hmiAction("SOP 是否展示录包弹窗, ", isChecked)
|
||||
}
|
||||
|
||||
//接管提醒
|
||||
scTakeOverRemind.isChecked = FunctionBuildConfig.isTakeoverRemind
|
||||
scTakeOverRemind.setOnCheckedChangeListener { _, isChecked ->
|
||||
FunctionBuildConfig.isTakeoverRemind = isChecked
|
||||
hmiAction("SOP 是否展示接管提醒, ", isChecked)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 与车相关类设置
|
||||
*/
|
||||
private fun vehicleSetting() {
|
||||
//绕障类功能
|
||||
scObstacleAvoidance.isChecked = FunctionBuildConfig.isDetouring
|
||||
scObstacleAvoidance.setOnCheckedChangeListener { _, isChecked ->
|
||||
hmiAction("SOP 绕障类功能开关, ", isChecked)
|
||||
CallerAutoPilotControlManager.sendDetouring(isChecked)
|
||||
FunctionBuildConfig.isDetouring = isChecked
|
||||
}
|
||||
|
||||
// 雨天模式,上一次勾选的数据
|
||||
scRainMode.isChecked = FunctionBuildConfig.isRainMode
|
||||
scRainMode.setOnCheckedChangeListener { compoundButton, isChecked ->
|
||||
@@ -539,10 +562,87 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
hmiAction("SOP 融合模式, ", FunctionBuildConfig.fusionMode)
|
||||
CallerAutoPilotControlManager.sendFusionMode(FunctionBuildConfig.fusionMode)
|
||||
}
|
||||
|
||||
//变道绕障的目标障碍物速度阈值
|
||||
tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s"
|
||||
ivSpeedReduce.setOnClickListener {
|
||||
if (FunctionBuildConfig.detouringSpeed <= 3) {
|
||||
ToastUtils.showShort("阈值最小可为3 m/s")
|
||||
} else {
|
||||
FunctionBuildConfig.detouringSpeed--
|
||||
tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s"
|
||||
}
|
||||
hmiAction("SOP 变道绕障的目标障碍物速度阈值", FunctionBuildConfig.detouringSpeed)
|
||||
}
|
||||
ivSpeedAdd.setOnClickListener {
|
||||
if (FunctionBuildConfig.detouringSpeed >= 7) {
|
||||
ToastUtils.showShort("阈值最大可为7 m/s")
|
||||
} else {
|
||||
FunctionBuildConfig.detouringSpeed++
|
||||
tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s"
|
||||
}
|
||||
hmiAction("SOP 变道绕障的目标障碍物速度阈值", FunctionBuildConfig.detouringSpeed)
|
||||
}
|
||||
btnSpeedSet.setOnClickListener {
|
||||
val isSuccess =
|
||||
CallerAutoPilotControlManager.sendDetouringSpeed(FunctionBuildConfig.detouringSpeed.toDouble())
|
||||
if (isSuccess == true) {
|
||||
ToastUtils.showShort("变道绕障的目标障碍物速度阈值设置成功")
|
||||
hmiAction("SOP 变道绕障的目标障碍物速度阈值设置", "成功")
|
||||
} else {
|
||||
ToastUtils.showShort("变道绕障的目标障碍物速度阈值设置失败")
|
||||
hmiAction("SOP 变道绕障的目标障碍物速度阈值设置", "失败")
|
||||
}
|
||||
}
|
||||
|
||||
ivSpeedOverTakeReduce.setOnClickListener {
|
||||
if (FunctionBuildConfig.overTakeSpeed <= 3) {
|
||||
ToastUtils.showShort("阈值最小可为3 m/s")
|
||||
} else {
|
||||
FunctionBuildConfig.overTakeSpeed -= 0.5f
|
||||
tvOverTakeLimit.text = "${FunctionBuildConfig.overTakeSpeed} m/s"
|
||||
}
|
||||
hmiAction("SOP 超车目标障碍物速度阈值", FunctionBuildConfig.overTakeSpeed)
|
||||
}
|
||||
ivSpeedOverTakeAdd.setOnClickListener {
|
||||
if (FunctionBuildConfig.overTakeSpeed >= 12.5) {
|
||||
ToastUtils.showShort("阈值最大可为12.5 m/s")
|
||||
} else {
|
||||
FunctionBuildConfig.overTakeSpeed += 0.5f
|
||||
tvOverTakeLimit.text = "${FunctionBuildConfig.overTakeSpeed} m/s"
|
||||
}
|
||||
hmiAction("SOP 超车目标障碍物速度阈值", FunctionBuildConfig.overTakeSpeed)
|
||||
}
|
||||
btnSpeedOverTakeSet.setOnClickListener {
|
||||
val isSuccess =
|
||||
CallerAutoPilotControlManager.sendOvertakeMaxSpeed(FunctionBuildConfig.overTakeSpeed.toDouble())
|
||||
if (isSuccess == true) {
|
||||
ToastUtils.showShort("SOP 超车目标障碍物速度阈值设置成功")
|
||||
hmiAction("SOP 超车目标障碍物速度阈值设置", "成功")
|
||||
} else {
|
||||
ToastUtils.showShort("SOP 超车目标障碍物速度阈值设置失败")
|
||||
hmiAction("SOP 超车目标障碍物速度阈值设置", "失败")
|
||||
}
|
||||
}
|
||||
|
||||
if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)) {
|
||||
tvSpeedThresholdTitle.visibility = View.GONE
|
||||
ivSpeedReduce.visibility = View.GONE
|
||||
tvSpeed.visibility = View.GONE
|
||||
ivSpeedAdd.visibility = View.GONE
|
||||
btnSpeedSet.visibility = View.GONE
|
||||
|
||||
tvSpeedOverTakeLimit.visibility = View.GONE
|
||||
ivSpeedOverTakeReduce.visibility = View.GONE
|
||||
tvOverTakeLimit.visibility = View.GONE
|
||||
ivSpeedOverTakeAdd.visibility = View.GONE
|
||||
btnSpeedOverTakeSet.visibility = View.GONE
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private var overTakeEditText: String = ""
|
||||
private var overTakeEditDel = false
|
||||
// private var overTakeEditText: String = ""
|
||||
// private var overTakeEditDel = false
|
||||
|
||||
/**
|
||||
* 其他类别开关设置
|
||||
@@ -633,17 +733,10 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
it.isChecked = CallerHmiManager.isTaxiUnmanedDriverLineRoutingVerifyMode()
|
||||
} else {
|
||||
it.isEnabled = false
|
||||
it.visibility = View.GONE
|
||||
it.visibility = View.INVISIBLE
|
||||
}
|
||||
}
|
||||
|
||||
//是否展示被动触发的录包弹窗(自动驾驶下出现问题触发的录包)
|
||||
scShowBagRecordWindow.isChecked = FunctionBuildConfig.isShowBagRecordWindow
|
||||
scShowBagRecordWindow.setOnCheckedChangeListener { _, isChecked ->
|
||||
FunctionBuildConfig.isShowBagRecordWindow = isChecked
|
||||
hmiAction("SOP 是否展示被动触发的录包弹窗, ", isChecked)
|
||||
}
|
||||
|
||||
// 清扫车业务模式切换
|
||||
scSweeperModeSwitch?.also { switchView ->
|
||||
switchView.isChecked =
|
||||
@@ -686,82 +779,6 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
}
|
||||
}
|
||||
|
||||
//变道绕障的目标障碍物速度阈值
|
||||
tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s"
|
||||
ivSpeedReduce.setOnClickListener {
|
||||
if (FunctionBuildConfig.detouringSpeed <= 3) {
|
||||
ToastUtils.showShort("阈值最小可为3 m/s")
|
||||
} else {
|
||||
FunctionBuildConfig.detouringSpeed--
|
||||
tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s"
|
||||
}
|
||||
hmiAction("SOP 变道绕障的目标障碍物速度阈值", FunctionBuildConfig.detouringSpeed)
|
||||
}
|
||||
ivSpeedAdd.setOnClickListener {
|
||||
if (FunctionBuildConfig.detouringSpeed >= 7) {
|
||||
ToastUtils.showShort("阈值最大可为7 m/s")
|
||||
} else {
|
||||
FunctionBuildConfig.detouringSpeed++
|
||||
tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s"
|
||||
}
|
||||
hmiAction("SOP 变道绕障的目标障碍物速度阈值", FunctionBuildConfig.detouringSpeed)
|
||||
}
|
||||
btnSpeedSet.setOnClickListener {
|
||||
val isSuccess =
|
||||
CallerAutoPilotControlManager.sendDetouringSpeed(FunctionBuildConfig.detouringSpeed.toDouble())
|
||||
if (isSuccess == true) {
|
||||
ToastUtils.showShort("变道绕障的目标障碍物速度阈值设置成功")
|
||||
hmiAction("SOP 变道绕障的目标障碍物速度阈值设置", "成功")
|
||||
} else {
|
||||
ToastUtils.showShort("变道绕障的目标障碍物速度阈值设置失败")
|
||||
hmiAction("SOP 变道绕障的目标障碍物速度阈值设置", "失败")
|
||||
}
|
||||
}
|
||||
|
||||
ivSpeedOverTakeReduce.setOnClickListener {
|
||||
if (FunctionBuildConfig.overTakeSpeed <= 3) {
|
||||
ToastUtils.showShort("阈值最小可为3 m/s")
|
||||
} else {
|
||||
FunctionBuildConfig.overTakeSpeed -= 0.5f
|
||||
tvOverTakeLimit.text = "${FunctionBuildConfig.overTakeSpeed} m/s"
|
||||
}
|
||||
hmiAction("SOP 超车目标障碍物速度阈值", FunctionBuildConfig.overTakeSpeed)
|
||||
}
|
||||
ivSpeedOverTakeAdd.setOnClickListener {
|
||||
if (FunctionBuildConfig.overTakeSpeed >= 12.5) {
|
||||
ToastUtils.showShort("阈值最大可为12.5 m/s")
|
||||
} else {
|
||||
FunctionBuildConfig.overTakeSpeed += 0.5f
|
||||
tvOverTakeLimit.text = "${FunctionBuildConfig.overTakeSpeed} m/s"
|
||||
}
|
||||
hmiAction("SOP 超车目标障碍物速度阈值", FunctionBuildConfig.overTakeSpeed)
|
||||
}
|
||||
btnSpeedOverTakeSet.setOnClickListener {
|
||||
val isSuccess =
|
||||
CallerAutoPilotControlManager.sendOvertakeMaxSpeed(FunctionBuildConfig.overTakeSpeed.toDouble())
|
||||
if (isSuccess == true) {
|
||||
ToastUtils.showShort("SOP 超车目标障碍物速度阈值设置成功")
|
||||
hmiAction("SOP 超车目标障碍物速度阈值设置", "成功")
|
||||
} else {
|
||||
ToastUtils.showShort("SOP 超车目标障碍物速度阈值设置失败")
|
||||
hmiAction("SOP 超车目标障碍物速度阈值设置", "失败")
|
||||
}
|
||||
}
|
||||
|
||||
if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)) {
|
||||
tvSpeedThresholdTitle.visibility = View.GONE
|
||||
ivSpeedReduce.visibility = View.GONE
|
||||
tvSpeed.visibility = View.GONE
|
||||
ivSpeedAdd.visibility = View.GONE
|
||||
btnSpeedSet.visibility = View.GONE
|
||||
|
||||
tvSpeedOverTakeLimit.visibility = View.GONE
|
||||
ivSpeedOverTakeReduce.visibility = View.GONE
|
||||
tvOverTakeLimit.visibility = View.GONE
|
||||
ivSpeedOverTakeAdd.visibility = View.GONE
|
||||
btnSpeedOverTakeSet.visibility = View.GONE
|
||||
}
|
||||
|
||||
val virtualTaskPullTaskInterval = CallerUnmannedListenerManager.getVirtualTaskPullTaskInterval()
|
||||
rbFive.isChecked = virtualTaskPullTaskInterval == 5
|
||||
rbFifteen.isChecked = virtualTaskPullTaskInterval == 15
|
||||
|
||||
@@ -240,7 +240,7 @@ class TakeOverView @JvmOverloads constructor(
|
||||
*/
|
||||
private fun showM1ParallelDrivingWarning(poiType: String,content: String,tts: String){
|
||||
//异常提醒均在开启美化模式后不弹出、不语音提示
|
||||
if(!FunctionBuildConfig.isDemoMode){
|
||||
if(!FunctionBuildConfig.isDemoMode && FunctionBuildConfig.isTakeoverRemind){
|
||||
//消息盒子提示
|
||||
saveMsgBox(
|
||||
MsgBoxBean(
|
||||
@@ -270,7 +270,7 @@ class TakeOverView @JvmOverloads constructor(
|
||||
}
|
||||
|
||||
private fun showParallelDrivingWarning(poiType: String,content: String,tts: String){
|
||||
if(!FunctionBuildConfig.isDemoMode){
|
||||
if(!FunctionBuildConfig.isDemoMode && FunctionBuildConfig.isTakeoverRemind){
|
||||
//异常提醒均在开启美化模式后不弹出、不语音提示
|
||||
//消息盒子提示
|
||||
saveMsgBox(
|
||||
|
||||
@@ -286,6 +286,92 @@
|
||||
|
||||
</androidx.cardview.widget.CardView>
|
||||
|
||||
<androidx.cardview.widget.CardView
|
||||
android:layout_width="@dimen/dp_780"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
app:cardBackgroundColor="@color/color_FFFFFF"
|
||||
app:cardCornerRadius="@dimen/dp_10"
|
||||
app:cardElevation="@dimen/dp_5"
|
||||
app:cardPreventCornerOverlap="true"
|
||||
app:cardUseCompatPadding="true"
|
||||
app:contentPadding="@dimen/dp_10"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvDemoTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_10"
|
||||
android:layout_marginTop="@dimen/dp_10"
|
||||
android:text="美化模式类"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="@dimen/sp_36"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/demoGuideLine"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintGuide_percent="0.5"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent" />
|
||||
|
||||
<!--美化模式-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scDemoMode"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="美化模式"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/demoGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvDemoTitle" />
|
||||
|
||||
<!--是否展示录包弹窗-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scShowBagRecordWindow"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:layout_marginBottom="@dimen/dp_10"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="录包弹窗"
|
||||
app:layout_constraintLeft_toLeftOf="@id/demoGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvDemoTitle" />
|
||||
|
||||
<!--接管提醒-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scTakeOverRemind"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:layout_marginBottom="@dimen/dp_10"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="接管提醒"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/demoGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/scDemoMode"
|
||||
/>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</androidx.cardview.widget.CardView>
|
||||
|
||||
<androidx.cardview.widget.CardView
|
||||
android:layout_width="@dimen/dp_780"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -337,19 +423,7 @@
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/vehicleGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvVehicleTitle" />
|
||||
<!--美化模式-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scDemoMode"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="美化模式"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="@id/vehicleGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvVehicleTitle" />
|
||||
|
||||
<!--雨天模式-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scRainMode"
|
||||
@@ -360,9 +434,9 @@
|
||||
android:scaleY="1.2"
|
||||
android:text="雨天模式"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/vehicleGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/scObstacleAvoidance" />
|
||||
app:layout_constraintLeft_toLeftOf="@id/vehicleGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvVehicleTitle" />
|
||||
<!--弱网减速停车-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scWeakNetSlowDown"
|
||||
@@ -375,7 +449,7 @@
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="@id/vehicleGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scDemoMode" />
|
||||
app:layout_constraintTop_toBottomOf="@id/scRainMode" />
|
||||
<!--故障减速停车-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scFaultSlowDown"
|
||||
@@ -443,216 +517,6 @@
|
||||
|
||||
</RadioGroup>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</androidx.cardview.widget.CardView>
|
||||
|
||||
<androidx.cardview.widget.CardView
|
||||
android:layout_width="@dimen/dp_780"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
app:cardBackgroundColor="@color/color_FFFFFF"
|
||||
app:cardCornerRadius="@dimen/dp_10"
|
||||
app:cardElevation="@dimen/dp_5"
|
||||
app:cardPreventCornerOverlap="true"
|
||||
app:cardUseCompatPadding="true"
|
||||
app:contentPadding="@dimen/dp_10"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvOtherTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_10"
|
||||
android:layout_marginTop="@dimen/dp_10"
|
||||
android:text="其他"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="@dimen/sp_36"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/otherGuideLine"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintGuide_percent="0.5"
|
||||
app:layout_constraintLeft_toLeftOf="@id/tvOtherTitle"
|
||||
app:layout_constraintRight_toRightOf="parent" />
|
||||
|
||||
<!--红绿灯标识-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scTrafficLight"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="红绿灯标识"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvOtherTitle" />
|
||||
<!--限速标识-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scSpeedLimit"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="限速标识"
|
||||
app:layout_constraintLeft_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvOtherTitle" />
|
||||
<!--异常上报提示-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scIPCReport"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="异常上报提示"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/scTrafficLight" />
|
||||
<!--360环视-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scNew360LookAround"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="360环视"
|
||||
app:layout_constraintLeft_toLeftOf="@id/otherGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scSpeedLimit" />
|
||||
|
||||
<!--是否展示被动录包弹窗-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scShowBagRecordWindow"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:layout_marginBottom="@dimen/dp_10"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="录包弹窗"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/scIPCReport" />
|
||||
|
||||
<!--清扫和业务模式切换开关(开-云控,关-运营)-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scSweeperModeSwitch"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintLeft_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scNew360LookAround"
|
||||
android:text="清扫云控业务"
|
||||
android:scaleY="1.2"
|
||||
android:scaleX="1.2"
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:layout_marginBottom="@dimen/dp_10"/>
|
||||
|
||||
<!--自主算路验证模式-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scLineRoutingVerify"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="自主算路验证模式"
|
||||
app:layout_constraintLeft_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scNew360LookAround" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvPullTimeTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_10"
|
||||
android:layout_marginTop="@dimen/dp_10"
|
||||
android:text="@string/pull_time_title"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32dp"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scShowBagRecordWindow" />
|
||||
|
||||
<RadioGroup
|
||||
android:id="@+id/rgPullTime"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_40"
|
||||
android:layout_marginTop="@dimen/dp_10"
|
||||
android:orientation="horizontal"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvPullTimeTitle">
|
||||
|
||||
<RadioButton
|
||||
android:id="@+id/rbFortyFive"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="10dp"
|
||||
android:text="45s"
|
||||
android:textSize="32dp" />
|
||||
|
||||
<RadioButton
|
||||
android:id="@+id/rbThirty"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="10dp"
|
||||
android:text="30s"
|
||||
android:textSize="32dp" />
|
||||
|
||||
<RadioButton
|
||||
android:id="@+id/rbFifteen"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="10dp"
|
||||
android:text="15s"
|
||||
android:textSize="32dp" />
|
||||
|
||||
<RadioButton
|
||||
android:id="@+id/rbFive"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="10dp"
|
||||
android:text="5s"
|
||||
android:textSize="32dp" />
|
||||
</RadioGroup>
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</androidx.cardview.widget.CardView>
|
||||
|
||||
<androidx.cardview.widget.CardView
|
||||
android:layout_width="@dimen/dp_780"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
app:cardBackgroundColor="@color/color_FFFFFF"
|
||||
app:cardCornerRadius="@dimen/dp_10"
|
||||
app:cardElevation="@dimen/dp_5"
|
||||
app:cardPreventCornerOverlap="true"
|
||||
app:cardUseCompatPadding="true"
|
||||
app:contentPadding="@dimen/dp_10"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvSpeedThresholdTitle"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -662,7 +526,7 @@
|
||||
android:textColor="#1A1A1A"
|
||||
android:textSize="@dimen/dp_36"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
app:layout_constraintTop_toBottomOf="@id/rgFusionMode"/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/ivSpeedReduce"
|
||||
@@ -774,6 +638,181 @@
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="@id/ivSpeedOverTakeAdd" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</androidx.cardview.widget.CardView>
|
||||
|
||||
<androidx.cardview.widget.CardView
|
||||
android:layout_width="@dimen/dp_780"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
app:cardBackgroundColor="@color/color_FFFFFF"
|
||||
app:cardCornerRadius="@dimen/dp_10"
|
||||
app:cardElevation="@dimen/dp_5"
|
||||
app:cardPreventCornerOverlap="true"
|
||||
app:cardUseCompatPadding="true"
|
||||
app:contentPadding="@dimen/dp_10"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvOtherTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_10"
|
||||
android:layout_marginTop="@dimen/dp_10"
|
||||
android:text="业务类"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="@dimen/sp_36"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/otherGuideLine"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintGuide_percent="0.5"
|
||||
app:layout_constraintLeft_toLeftOf="@id/tvOtherTitle"
|
||||
app:layout_constraintRight_toRightOf="parent" />
|
||||
|
||||
<!--红绿灯标识-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scTrafficLight"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="红绿灯标识"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvOtherTitle" />
|
||||
<!--限速标识-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scSpeedLimit"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="限速标识"
|
||||
app:layout_constraintLeft_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvOtherTitle" />
|
||||
<!--异常上报提示-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scIPCReport"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="异常上报提示"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/scTrafficLight" />
|
||||
<!--360环视-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scNew360LookAround"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="360环视"
|
||||
app:layout_constraintLeft_toLeftOf="@id/otherGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scSpeedLimit" />
|
||||
|
||||
<!--清扫和业务模式切换开关(开-云控,关-运营)-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scSweeperModeSwitch"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintLeft_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scNew360LookAround"
|
||||
android:text="清扫云控业务"
|
||||
android:scaleY="1.2"
|
||||
android:scaleX="1.2"
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:layout_marginBottom="@dimen/dp_10"/>
|
||||
|
||||
<!--自主算路验证模式-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scLineRoutingVerify"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="自主算路验证模式"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/scNew360LookAround" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvPullTimeTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_10"
|
||||
android:layout_marginTop="@dimen/dp_10"
|
||||
android:text="@string/pull_time_title"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32dp"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scLineRoutingVerify" />
|
||||
|
||||
<RadioGroup
|
||||
android:id="@+id/rgPullTime"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_40"
|
||||
android:layout_marginTop="@dimen/dp_10"
|
||||
android:orientation="horizontal"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvPullTimeTitle">
|
||||
|
||||
<RadioButton
|
||||
android:id="@+id/rbFortyFive"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="10dp"
|
||||
android:text="45s"
|
||||
android:textSize="32dp" />
|
||||
|
||||
<RadioButton
|
||||
android:id="@+id/rbThirty"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="10dp"
|
||||
android:text="30s"
|
||||
android:textSize="32dp" />
|
||||
|
||||
<RadioButton
|
||||
android:id="@+id/rbFifteen"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="10dp"
|
||||
android:text="15s"
|
||||
android:textSize="32dp" />
|
||||
|
||||
<RadioButton
|
||||
android:id="@+id/rbFive"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="10dp"
|
||||
android:text="5s"
|
||||
android:textSize="32dp" />
|
||||
</RadioGroup>
|
||||
|
||||
<androidx.appcompat.widget.LinearLayoutCompat
|
||||
android:id="@+id/llMFLayout"
|
||||
android:layout_width="0dip"
|
||||
@@ -786,7 +825,7 @@
|
||||
android:padding="5dip"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/tvSpeedOverTakeLimit">
|
||||
app:layout_constraintTop_toBottomOf="@+id/rgPullTime">
|
||||
|
||||
<com.mogo.eagle.core.function.hmi.ui.setting.StateViewLayout
|
||||
android:id="@+id/mfStatusLayout"
|
||||
|
||||
Reference in New Issue
Block a user