[清扫车作业模式和清扫车模式选择面板UI修改]

This commit is contained in:
bxb
2023-01-12 17:55:32 +08:00
parent 792cbf89a5
commit b10ceb9bc3
16 changed files with 323 additions and 112 deletions

View File

@@ -16,6 +16,7 @@ import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.constraintlayout.widget.Group;
import com.mogo.commons.AbsMogoApplication;
@@ -43,6 +44,7 @@ import com.mogo.och.sweeper.R;
import com.mogo.och.sweeper.bean.SweeperRoutesResult;
import com.mogo.och.sweeper.constant.SweeperConst;
import com.mogo.och.sweeper.model.SweeperOrderModel;
import com.mogo.och.sweeper.ui.SweeperOperatePanelView;
import com.mogo.och.sweeper.view.SweeperTrafficDataView;
import com.mogo.och.sweeper.util.BDRouteDataTestUtils;
import com.mogo.och.sweeper.view.SlidePanelView;
@@ -72,11 +74,12 @@ public abstract class BaseSweeperTabFragment<V extends IView, P extends Presente
public boolean isOperationStatus;//false-收车true-出车
private FrameLayout flStationPanelContainer;
private Group groupTestPanel;
private FrameLayout flSpeed;
// private BusArcView mouduleArc;
//清扫车车辆基本信息 速度 档位 转向灯 红绿灯等
private SweeperTrafficDataView mTrafficDataView;
private ImageView mUpgradeTipIv;
// private BusTrafficLightView mTrafficLightView;
//清扫车模式展示
private ConstraintLayout mClWorkMode;
//清扫车模式选择面板
private SweeperOperatePanelView mOperatePanel;
public static final String TYPE_ENTRANCE = "entrance";
@@ -114,12 +117,7 @@ public abstract class BaseSweeperTabFragment<V extends IView, P extends Presente
ctvAutopilotStatusTv = findViewById(R.id.sweeper_autopolot_btn_tv);
flStationPanelContainer = findViewById(R.id.module_mogo_och_station_panel_container);
// mTrafficLightView = findViewById(R.id.bus_traffic_light_view);
// CallerHmiManager.INSTANCE.setProxyTrafficLightView(mTrafficLightView);
tvOperationStatus = findViewById(R.id.module_mogo_och_operation_status);
flSpeed = (FrameLayout) findViewById(R.id.fl_speed);
mTrafficDataView = findViewById(R.id.sweeper_arc);
panelView = LayoutInflater.from(getContext()).inflate(getStationPanelViewId(), flStationPanelContainer);
@@ -127,6 +125,8 @@ public abstract class BaseSweeperTabFragment<V extends IView, P extends Presente
mSwitchMapModeLayout = findViewById(R.id.sweeper_switch_model_layout);
mSwitchMapModeImage = findViewById(R.id.sweeper_switch_model_icon);
mClWorkMode = findViewById(R.id.sweeper_cl_work_mode);
mOperatePanel = findViewById(R.id.module_mogo_och_sweeper_operate_panel);
updateSwitchMapIcon();
mSwitchMapModeLayout.setOnClickListener(new OnPreventFastClickListener() {
@@ -146,6 +146,13 @@ public abstract class BaseSweeperTabFragment<V extends IView, P extends Presente
}
}
});
mClWorkMode.setOnClickListener(v -> {
if (mOperatePanel.getVisibility()==View.VISIBLE){
mOperatePanel.setVisibility(View.GONE);
}else{
mOperatePanel.setVisibility(View.VISIBLE);
}
});
if (DebugConfig.isDebug()) {
mTrafficDataView.setLongClickable(true);
@@ -161,11 +168,7 @@ public abstract class BaseSweeperTabFragment<V extends IView, P extends Presente
@Override
public void onClickImpl(View v) {
// if (CallerAutoPilotStatusListenerManager.INSTANCE.getAutoPilotStatusInfo().getState() != IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE){
restartAutopilot();
// }else {
// ToastUtils.showShort(getResources().getString(R.string.sweeper_auto_disable_tip));
// }
}
});

View File

@@ -66,6 +66,8 @@ public class SweeperOperatePanelView extends LinearLayout {
LinearLayout mLoadingContainer;//loading container
TextView mLoadingHintTop;//loading 提示-上面
TextView mLoadingHintBottom;//loading 提示-下面
private TextView mBtnCancel;//取消
private TextView mBtnReset;//复位
// 作业模式相关操作按钮的id
List<Integer> cleanModeBtnViewIds = Arrays.asList(
@@ -146,6 +148,8 @@ public class SweeperOperatePanelView extends LinearLayout {
mLoadingContainer = findViewById(R.id.loading_hint_container);
mLoadingHintTop = findViewById(R.id.loading_hint_top);
mLoadingHintBottom = findViewById(R.id.loading_hint_bottom);
mBtnCancel = findViewById(R.id.btn_operate_panel_cancel);
mBtnReset = findViewById(R.id.btn_operate_panel_reset);
initViewListener();
}
@@ -160,6 +164,8 @@ public class SweeperOperatePanelView extends LinearLayout {
setClickListener(mBtnCleanDirectionBothSide, (v) -> onCleanDirectionBtnClick(v));
setClickListener(mBtnCleanIntensityStandard, (v) -> onCleanIntensityBtnClick(v));
setClickListener(mBtnCleanIntensityStrong, (v) -> onCleanIntensityBtnClick(v));
setClickListener(mBtnReset, (v) -> onOperateReset());
setClickListener(mBtnCancel, (v) -> onOperateCancel());
}
/**
@@ -1016,6 +1022,18 @@ public class SweeperOperatePanelView extends LinearLayout {
);
}
/**
* 取消关闭面板
*/
private void onOperateCancel(){
this.setVisibility(View.GONE);
}
/**
* 复位
*/
private void onOperateReset(){
}
private final static SweeperOperateCmdHandler mSweeperOperateCmdHandler = new SweeperOperateCmdHandler();
private static CmdRequestCallback mCurrentCmdRequestCallback;//发送命令后的回调
private boolean mSyncingVehicleState;//第一次进入页面时,同步底盘状态的标志位

Binary file not shown.

After

Width:  |  Height:  |  Size: 622 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 484 B

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<solid android:color="#4882FF"/>
<corners android:radius="@dimen/dp_10"/>
</shape>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#00000000"/>
<corners android:radius="@dimen/sweeper_operate_panel_btn_bg_corner"/>
<solid android:color="#183360"/>
<corners android:radius="@dimen/dp_30" />
</shape>

View File

@@ -3,5 +3,4 @@
android:shape="rectangle">
<solid android:color="@color/sweeper_operate_panel_btn2_bg_default"/>
<corners android:radius="@dimen/sweeper_operate_panel_btn_bg_corner"/>
<stroke android:color="@color/sweeper_operate_panel_btn2_bg_stroke" android:width="1dp"/>
</shape>

View File

@@ -3,5 +3,4 @@
android:shape="rectangle">
<solid android:color="@color/sweeper_operate_panel_btn2_bg_disabled"/>
<corners android:radius="@dimen/sweeper_operate_panel_btn_bg_corner"/>
<stroke android:color="@color/sweeper_operate_panel_btn2_bg_stroke" android:width="1dp"/>
</shape>

View File

@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="@color/sweeper_operate_panel_btn2_bg_pressed"/>
<gradient android:angle="180" android:startColor="#20AAFF" android:endColor="#2F6EFF"/>
<corners android:radius="@dimen/sweeper_operate_panel_btn_bg_corner"/>
<stroke android:color="@color/sweeper_operate_panel_btn2_bg_stroke" android:width="1dp"/>
</shape>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<solid android:color="#2A4A7A"/>
<corners android:bottomRightRadius="@dimen/dp_28"/>
</shape>

View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<gradient android:startColor="#20AAFF" android:endColor="#2F6EFF" android:angle="180"/>
<corners android:bottomLeftRadius="@dimen/dp_28"/>
</shape>

View File

@@ -30,7 +30,8 @@
app:layout_constraintLeft_toLeftOf="parent"
android:layout_marginLeft="@dimen/dp_13"
android:gravity="center"
tools:visibility="visible" >
tools:visibility="visible"
android:visibility="gone">
<ImageView
android:id="@+id/sweeper_autopilot_btn_iv"
@@ -52,14 +53,91 @@
android:textStyle="bold" />
</RelativeLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="@dimen/dp_560"
android:layout_height="@dimen/dp_170"
android:background="@drawable/bg_shape_work_mode"
app:layout_constraintTop_toBottomOf="@+id/fl_speed"
app:layout_constraintLeft_toLeftOf="parent"
android:id="@+id/sweeper_cl_work_mode"
android:layout_marginStart="@dimen/dp_41">
<TextView
android:id="@+id/tvTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"
android:text="当前作业模式:"
android:textColor="@color/white"
android:textSize="@dimen/dp_32"
android:layout_marginTop="@dimen/dp_30"
android:layout_marginStart="@dimen/dp_36"/>
<TextView
android:id="@+id/tvCleaningMode"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintTop_toBottomOf="@+id/tvTitle"
app:layout_constraintStart_toStartOf="@+id/tvTitle"
android:text="纯扫模式"
android:textSize="@dimen/dp_34"
android:textColor="@color/white"
android:layout_marginTop="@dimen/dp_16"
android:background="@drawable/bg_shape_clean_mode"
android:paddingStart="@dimen/dp_10"
android:paddingEnd="@dimen/dp_10"
android:paddingTop="@dimen/dp_2"
android:paddingBottom="@dimen/dp_2"
android:gravity="center"/>
<TextView
android:id="@+id/tvCleaningDirection"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/tvCleaningMode"
app:layout_constraintTop_toBottomOf="@+id/tvTitle"
android:text="左侧"
android:textSize="@dimen/dp_34"
android:textColor="@color/white"
android:layout_marginTop="@dimen/dp_16"
android:background="@drawable/bg_shape_clean_mode"
android:paddingStart="@dimen/dp_10"
android:paddingEnd="@dimen/dp_10"
android:paddingTop="@dimen/dp_2"
android:paddingBottom="@dimen/dp_2"
android:layout_marginStart="@dimen/dp_20"
android:gravity="center"/>
<TextView
android:id="@+id/tvCleaningIntensity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/tvCleaningDirection"
app:layout_constraintTop_toBottomOf="@+id/tvTitle"
android:text="标准"
android:textSize="@dimen/dp_34"
android:textColor="@color/white"
android:layout_marginTop="@dimen/dp_16"
android:background="@drawable/bg_shape_clean_mode"
android:paddingStart="@dimen/dp_10"
android:paddingEnd="@dimen/dp_10"
android:paddingTop="@dimen/dp_2"
android:paddingBottom="@dimen/dp_2"
android:layout_marginStart="@dimen/dp_20"
android:gravity="center"/>
<ImageView
android:layout_width="@dimen/dp_54"
android:layout_height="@dimen/dp_40"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:layout_marginEnd="@dimen/dp_30"
android:src="@drawable/sweeper_clean_mode_icon"/>
</androidx.constraintlayout.widget.ConstraintLayout>
<FrameLayout
android:id="@+id/module_mogo_och_station_panel_container"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintLeft_toLeftOf="parent"
android:layout_marginLeft="@dimen/dp_13"
app:layout_constraintTop_toBottomOf="@id/module_mogo_och_autopilot_status"
app:layout_constraintTop_toBottomOf="@id/sweeper_cl_work_mode"
app:layout_goneMarginTop="@dimen/module_mogo_och_station_panel_container_margin_top_no_call"
tools:visibility="visible" />
@@ -67,11 +145,10 @@
android:id="@+id/module_mogo_och_sweeper_operate_panel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_24"
android:layout_marginStart="@dimen/dp_8"
app:layout_constraintLeft_toRightOf="@id/fl_speed"
app:layout_constraintTop_toTopOf="@id/fl_speed"
tools:background="#f00"
app:layout_constraintLeft_toRightOf="@id/sweeper_cl_work_mode"
app:layout_constraintTop_toTopOf="@id/sweeper_cl_work_mode"
android:visibility="gone"
tools:visibility="visible" />
<include

View File

@@ -1,12 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_32"
android:background="@drawable/bg_sweeper_operate_panel"
android:padding="@dimen/dp_8">
android:layout_width="@dimen/dp_957"
android:layout_height="@dimen/dp_758"
android:background="@drawable/bg_sweeper_operate_panel">
<TextView
android:id="@+id/hint_clean_work"
@@ -22,7 +19,8 @@
android:textColor="#000000"
android:textSize="@dimen/sweeper_operate_panel_btn_text_size"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent" />
app:layout_constraintTop_toTopOf="parent"
android:visibility="gone"/>
<CheckedTextView
android:id="@+id/btn_clean_work_open_close"
@@ -41,7 +39,8 @@
android:textColor="#000000"
android:textSize="@dimen/sweeper_operate_panel_btn_text_size"
app:layout_constraintLeft_toRightOf="@id/hint_clean_work"
app:layout_constraintTop_toTopOf="@id/hint_clean_work" />
app:layout_constraintTop_toTopOf="@id/hint_clean_work"
android:visibility="gone"/>
<androidx.constraintlayout.widget.Barrier
android:id="@+id/clean_work_barrier"
@@ -54,90 +53,93 @@
android:id="@+id/hint_clean_mode"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_28"
android:background="#ffffff"
android:gravity="top|center_horizontal"
android:paddingStart="@dimen/dp_8"
android:paddingTop="@dimen/dp_12"
android:paddingEnd="@dimen/dp_8"
android:paddingBottom="@dimen/dp_12"
android:layout_marginTop="@dimen/dp_48"
android:text="作业模式"
android:textColor="#000000"
android:textColor="@color/white"
android:textSize="@dimen/sweeper_operate_panel_btn_text_size"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toBottomOf="@id/clean_work_barrier" />
app:layout_constraintTop_toTopOf="parent"
android:paddingStart="@dimen/dp_90"
/>
<CheckedTextView
android:id="@+id/btn_clean_mode_pure_sweep"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_28"
android:background="@drawable/sweeper_operate_panel_btn2_bg_selector"
android:enabled="false"
android:gravity="center"
android:paddingStart="@dimen/dp_32"
android:layout_marginStart="@dimen/dp_90"
android:paddingStart="@dimen/dp_48"
android:paddingTop="@dimen/dp_12"
android:paddingEnd="@dimen/dp_32"
android:paddingEnd="@dimen/dp_48"
android:paddingBottom="@dimen/dp_12"
android:textColor="@color/white"
android:text="纯扫"
android:textColor="#000000"
android:textSize="@dimen/sweeper_operate_panel_btn_text_size"
app:layout_constraintLeft_toRightOf="@id/hint_clean_mode"
app:layout_constraintTop_toTopOf="@id/hint_clean_mode" />
app:layout_constraintTop_toBottomOf="@id/hint_clean_mode"
app:layout_constraintStart_toStartOf="parent"
android:layout_marginTop="@dimen/dp_17"
/>
<CheckedTextView
android:id="@+id/btn_clean_mode_pure_wash"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_28"
android:background="@drawable/sweeper_operate_panel_btn2_bg_selector"
android:enabled="false"
android:gravity="center"
android:paddingStart="@dimen/dp_32"
android:paddingStart="@dimen/dp_48"
android:paddingTop="@dimen/dp_12"
android:paddingEnd="@dimen/dp_32"
android:paddingEnd="@dimen/dp_48"
android:paddingBottom="@dimen/dp_12"
android:textColor="@color/white"
android:text="纯洗"
android:textColor="#000000"
android:textSize="@dimen/sweeper_operate_panel_btn_text_size"
app:layout_constraintLeft_toRightOf="@id/btn_clean_mode_pure_sweep"
app:layout_constraintTop_toTopOf="@id/hint_clean_mode" />
app:layout_constraintTop_toBottomOf="@id/hint_clean_mode"
app:layout_constraintStart_toEndOf="@+id/btn_clean_mode_pure_sweep"
android:layout_marginTop="@dimen/dp_17"
android:layout_marginStart="@dimen/dp_46"/>
<CheckedTextView
android:id="@+id/btn_clean_mode_sweep_wash"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_28"
android:background="@drawable/sweeper_operate_panel_btn2_bg_selector"
android:enabled="false"
android:gravity="center"
android:paddingStart="@dimen/dp_32"
android:paddingStart="@dimen/dp_48"
android:paddingTop="@dimen/dp_12"
android:paddingEnd="@dimen/dp_32"
android:paddingEnd="@dimen/dp_48"
android:paddingBottom="@dimen/dp_12"
android:textColor="@color/white"
android:text="洗扫"
android:textColor="#000000"
android:textSize="@dimen/sweeper_operate_panel_btn_text_size"
app:layout_constraintLeft_toLeftOf="@id/btn_clean_mode_pure_sweep"
app:layout_constraintTop_toBottomOf="@id/btn_clean_mode_pure_sweep" />
app:layout_constraintTop_toBottomOf="@id/hint_clean_mode"
app:layout_constraintStart_toEndOf="@+id/btn_clean_mode_pure_wash"
android:layout_marginTop="@dimen/dp_17"
android:layout_marginStart="@dimen/dp_46"/>
<CheckedTextView
android:id="@+id/btn_clean_mode_pure_absorption"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_28"
android:background="@drawable/sweeper_operate_panel_btn2_bg_selector"
android:enabled="false"
android:gravity="center"
android:paddingStart="@dimen/dp_32"
android:paddingStart="@dimen/dp_48"
android:paddingTop="@dimen/dp_12"
android:paddingEnd="@dimen/dp_32"
android:paddingEnd="@dimen/dp_48"
android:paddingBottom="@dimen/dp_12"
android:textColor="@color/white"
android:text="纯吸"
android:textColor="#000000"
android:textSize="@dimen/sweeper_operate_panel_btn_text_size"
app:layout_constraintLeft_toRightOf="@id/btn_clean_mode_sweep_wash"
app:layout_constraintTop_toTopOf="@id/btn_clean_mode_sweep_wash" />
android:layout_marginTop="@dimen/dp_17"
android:layout_marginStart="@dimen/dp_46"
app:layout_constraintTop_toBottomOf="@id/hint_clean_mode"
app:layout_constraintStart_toEndOf="@+id/btn_clean_mode_sweep_wash"
android:layout_marginEnd="@dimen/dp_20"/>
<androidx.constraintlayout.widget.Barrier
android:id="@+id/clean_mode_barrier"
@@ -150,15 +152,11 @@
android:id="@+id/hint_clean_direction"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_28"
android:background="#ffffff"
android:layout_marginTop="@dimen/dp_48"
android:layout_marginStart="@dimen/dp_90"
android:gravity="top|center_horizontal"
android:paddingStart="@dimen/dp_8"
android:paddingTop="@dimen/dp_12"
android:paddingEnd="@dimen/dp_8"
android:paddingBottom="@dimen/dp_12"
android:textColor="@color/white"
android:text="清扫方向"
android:textColor="#000000"
android:textSize="@dimen/sweeper_operate_panel_btn_text_size"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toBottomOf="@id/clean_mode_barrier" />
@@ -167,19 +165,20 @@
android:id="@+id/btn_clean_direction_left_side"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_28"
android:background="@drawable/sweeper_operate_panel_btn2_bg_selector"
android:enabled="false"
android:gravity="center"
android:paddingStart="@dimen/dp_32"
android:paddingStart="@dimen/dp_48"
android:paddingTop="@dimen/dp_12"
android:paddingEnd="@dimen/dp_32"
android:paddingEnd="@dimen/dp_48"
android:paddingBottom="@dimen/dp_12"
android:layout_marginStart="@dimen/dp_90"
android:textColor="@color/white"
android:text="左侧"
android:textColor="#000000"
android:textSize="@dimen/sweeper_operate_panel_btn_text_size"
app:layout_constraintLeft_toRightOf="@id/hint_clean_direction"
app:layout_constraintTop_toTopOf="@id/hint_clean_direction" />
app:layout_constraintTop_toBottomOf="@+id/hint_clean_direction"
app:layout_constraintStart_toStartOf="parent"
android:layout_marginTop="@dimen/dp_17"/>
<CheckedTextView
android:id="@+id/btn_clean_direction_right_side"
@@ -189,33 +188,35 @@
android:background="@drawable/sweeper_operate_panel_btn2_bg_selector"
android:enabled="false"
android:gravity="center"
android:paddingStart="@dimen/dp_32"
android:paddingStart="@dimen/dp_48"
android:paddingTop="@dimen/dp_12"
android:paddingEnd="@dimen/dp_32"
android:paddingEnd="@dimen/dp_48"
android:paddingBottom="@dimen/dp_12"
android:textColor="@color/white"
android:text="右侧"
android:textColor="#000000"
android:layout_marginTop="@dimen/dp_17"
android:textSize="@dimen/sweeper_operate_panel_btn_text_size"
app:layout_constraintLeft_toRightOf="@id/btn_clean_direction_left_side"
app:layout_constraintTop_toTopOf="@id/hint_clean_direction" />
app:layout_constraintTop_toBottomOf="@+id/hint_clean_direction"
app:layout_constraintStart_toEndOf="@+id/btn_clean_direction_left_side"/>
<CheckedTextView
android:id="@+id/btn_clean_direction_both_side"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_28"
android:layout_marginStart="@dimen/dp_28"
android:background="@drawable/sweeper_operate_panel_btn2_bg_selector"
android:enabled="false"
android:gravity="center"
android:paddingStart="@dimen/dp_32"
android:paddingStart="@dimen/dp_48"
android:paddingTop="@dimen/dp_12"
android:paddingEnd="@dimen/dp_32"
android:paddingEnd="@dimen/dp_48"
android:paddingBottom="@dimen/dp_12"
android:textColor="@color/white"
android:text="两侧"
android:textColor="#000000"
android:layout_marginTop="@dimen/dp_17"
android:textSize="@dimen/sweeper_operate_panel_btn_text_size"
app:layout_constraintLeft_toLeftOf="@id/btn_clean_direction_left_side"
app:layout_constraintTop_toBottomOf="@id/btn_clean_direction_left_side" />
app:layout_constraintStart_toEndOf="@+id/btn_clean_direction_right_side"
app:layout_constraintTop_toBottomOf="@id/hint_clean_direction" />
<androidx.constraintlayout.widget.Barrier
android:id="@+id/clean_direction_barrier"
@@ -228,15 +229,11 @@
android:id="@+id/hint_clean_intensity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_28"
android:background="#ffffff"
android:layout_marginTop="@dimen/dp_48"
android:gravity="top|center_horizontal"
android:paddingStart="@dimen/dp_8"
android:paddingTop="@dimen/dp_12"
android:paddingEnd="@dimen/dp_8"
android:paddingBottom="@dimen/dp_12"
android:layout_marginStart="@dimen/dp_90"
android:text="作业强度"
android:textColor="#000000"
android:textColor="@color/white"
android:textSize="@dimen/sweeper_operate_panel_btn_text_size"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toBottomOf="@id/clean_direction_barrier" />
@@ -245,19 +242,20 @@
android:id="@+id/btn_clean_intensity_standard"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_28"
android:background="@drawable/sweeper_operate_panel_btn2_bg_selector"
android:enabled="false"
android:gravity="center"
android:paddingStart="@dimen/dp_32"
android:paddingStart="@dimen/dp_48"
android:paddingTop="@dimen/dp_12"
android:paddingEnd="@dimen/dp_32"
android:paddingEnd="@dimen/dp_48"
android:paddingBottom="@dimen/dp_12"
android:layout_marginStart="@dimen/dp_90"
android:textColor="@color/white"
android:layout_marginTop="@dimen/dp_17"
android:text="标准"
android:textColor="#000000"
android:textSize="@dimen/sweeper_operate_panel_btn_text_size"
app:layout_constraintLeft_toRightOf="@id/hint_clean_intensity"
app:layout_constraintTop_toTopOf="@id/hint_clean_intensity" />
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/hint_clean_intensity" />
<CheckedTextView
android:id="@+id/btn_clean_intensity_strong"
@@ -267,16 +265,43 @@
android:background="@drawable/sweeper_operate_panel_btn2_bg_selector"
android:enabled="false"
android:gravity="center"
android:paddingStart="@dimen/dp_32"
android:paddingStart="@dimen/dp_48"
android:paddingTop="@dimen/dp_12"
android:paddingEnd="@dimen/dp_32"
android:paddingEnd="@dimen/dp_48"
android:paddingBottom="@dimen/dp_12"
android:textColor="@color/white"
android:layout_marginTop="@dimen/dp_17"
android:text="强力"
android:textColor="#000000"
android:textSize="@dimen/sweeper_operate_panel_btn_text_size"
app:layout_constraintLeft_toRightOf="@id/btn_clean_intensity_standard"
app:layout_constraintTop_toTopOf="@id/hint_clean_intensity" />
app:layout_constraintTop_toBottomOf="@id/hint_clean_intensity" />
<TextView
android:id="@+id/btn_operate_panel_reset"
android:layout_width="0dp"
android:layout_height="@dimen/dp_128"
app:layout_constraintStart_toStartOf="parent"
android:background="@drawable/sweeper_oprate_panel_reset_btn"
app:layout_constraintWidth_percent="0.5"
app:layout_constraintBottom_toBottomOf="parent"
android:layout_marginStart="@dimen/dp_24"
android:textColor="@color/white"
android:text="复位"
android:gravity="center"
android:textSize="@dimen/dp_40"
/>
<TextView
android:id="@+id/btn_operate_panel_cancel"
android:layout_width="0dp"
android:layout_height="@dimen/dp_128"
app:layout_constraintEnd_toEndOf="parent"
android:background="@drawable/sweeper_oprate_panel_cancel_btn"
app:layout_constraintWidth_percent="0.5"
app:layout_constraintBottom_toBottomOf="parent"
android:textColor="@color/white"
android:text="取消"
android:gravity="center"
android:textSize="@dimen/dp_40"
/>
<LinearLayout
android:id="@+id/loading_hint_container"
android:layout_width="0dp"

View File

@@ -0,0 +1,75 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="@dimen/dp_616"
android:layout_height="@dimen/dp_170"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:background="@drawable/bg_shape_work_mode"
android:id="@+id/clWorkMode">
<TextView
android:id="@+id/tvTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"
android:text="当前作业模式:"
android:textColor="@color/white"
android:textSize="@dimen/dp_32"
android:layout_marginTop="@dimen/dp_30"
android:layout_marginStart="@dimen/dp_36"/>
<TextView
android:id="@+id/tvCleaningMode"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintTop_toBottomOf="@+id/tvTitle"
app:layout_constraintStart_toStartOf="@+id/tvTitle"
android:text="纯扫模式"
android:textSize="@dimen/dp_34"
android:textColor="@color/white"
android:layout_marginTop="@dimen/dp_16"
android:background="@drawable/bg_shape_clean_mode"
android:paddingStart="@dimen/dp_10"
android:paddingEnd="@dimen/dp_10"
android:paddingTop="@dimen/dp_2"
android:paddingBottom="@dimen/dp_2"/>
<TextView
android:id="@+id/tvCleaningDirection"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/tvCleaningMode"
app:layout_constraintTop_toBottomOf="@+id/tvTitle"
android:text="左侧"
android:textSize="@dimen/dp_34"
android:textColor="@color/white"
android:layout_marginTop="@dimen/dp_16"
android:background="@drawable/bg_shape_clean_mode"
android:paddingStart="@dimen/dp_10"
android:paddingEnd="@dimen/dp_10"
android:paddingTop="@dimen/dp_2"
android:paddingBottom="@dimen/dp_2"
android:layout_marginStart="@dimen/dp_20"/>
<TextView
android:id="@+id/tvCleaningIntensity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/tvCleaningDirection"
app:layout_constraintTop_toBottomOf="@+id/tvTitle"
android:text="标准"
android:textSize="@dimen/dp_34"
android:textColor="@color/white"
android:layout_marginTop="@dimen/dp_16"
android:background="@drawable/bg_shape_clean_mode"
android:paddingStart="@dimen/dp_10"
android:paddingEnd="@dimen/dp_10"
android:paddingTop="@dimen/dp_2"
android:paddingBottom="@dimen/dp_2"
android:layout_marginStart="@dimen/dp_20"/>
<ImageView
android:layout_width="@dimen/dp_54"
android:layout_height="@dimen/dp_40"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:layout_marginEnd="@dimen/dp_30"
android:src="@drawable/sweeper_clean_mode_icon"/>
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -48,9 +48,9 @@
<color name="sweeper_operate_panel_btn1_bg_open">#7DE261</color>
<color name="sweeper_operate_panel_btn1_bg_close">#f00</color>
<color name="sweeper_operate_panel_btn1_bg_stroke">#BF30334C</color>
<color name="sweeper_operate_panel_btn2_bg_default">#ffffff</color>
<color name="sweeper_operate_panel_btn2_bg_default">#548DB8</color>
<color name="sweeper_operate_panel_btn2_bg_pressed">#1FA7FF</color>
<color name="sweeper_operate_panel_btn2_bg_disabled">#80ffffff</color>
<color name="sweeper_operate_panel_btn2_bg_disabled">#3769B5</color>
<color name="sweeper_operate_panel_btn2_bg_stroke">#BF30334C</color>
</resources>

View File

@@ -149,6 +149,6 @@
<dimen name="sweeper_traffic_light_time_view_width">130dp</dimen>
<dimen name="sweeper_traffic_light_time_size">60dp</dimen>
<dimen name="sweeper_operate_panel_btn_bg_corner">16dp</dimen>
<dimen name="sweeper_operate_panel_btn_text_size">36dp</dimen>
<dimen name="sweeper_operate_panel_btn_bg_corner">13dp</dimen>
<dimen name="sweeper_operate_panel_btn_text_size">32dp</dimen>
</resources>