app/src/main/java/safeluck/drive/evaluation/customview/SelectDialogThree.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/safeluck/drive/evaluation/util/DataInit.kt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/res/layout/layout_select_dlg_three.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/res/values/dimens.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
app/src/main/java/safeluck/drive/evaluation/customview/SelectDialogThree.java
New file @@ -0,0 +1,166 @@ package safeluck.drive.evaluation.customview; import android.graphics.Color; import android.graphics.drawable.ColorDrawable; import android.os.Build; import android.os.Bundle; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.view.Window; import android.view.WindowManager; import android.widget.Button; import android.widget.RadioButton; import android.widget.RadioGroup; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.fragment.app.DialogFragment; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import safeluck.drive.evaluation.R; /** * @ProjectName: DriveJudge * @Package: safeluck.drive.evaluation.customview * @ClassName: SelectDialog * @Description: java类作用描述 * @Author: 李占伟 * @CreateDate: 2020-04-23 15:03 * @UpdateUser: 更新者 * @UpdateDate: 2020-04-23 15:03 * @UpdateRemark: 更新说明 * @Version: 1.0 */ public class SelectDialogThree extends DialogFragment implements View.OnClickListener { private static final String TAG = "SelectDialog"; private Button button; private RadioGroup rgb; public static final int FIRST = 0; public static final int SECOND = 1; public static final int THIRD = 2; public static final int SELECT_NONE = -1; private int result = SELECT_NONE; private RadioButton rb_1,rb_2; private ArrayList<String> stringArrayList; @Nullable @Override public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { if (getDialog() != null) { Window window = getDialog().getWindow(); if (window != null) { window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); window.addFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE); getDialog().setOnShowListener(dialog -> { window.clearFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE); hideBottomUIMenu(); }); } } View view = inflater.inflate(R.layout.layout_select_dlg_three,container,false); Bundle bundle = getArguments(); if (bundle != null){ stringArrayList = bundle.getStringArrayList("content"); } initView(view); return view; } private void initView(View view) { button = view.findViewById(R.id.btn_sure_); rb_1 = view.findViewById(R.id.rb1); rb_2 = view.findViewById(R.id.rb2); if (stringArrayList != null){ rb_1.setText(stringArrayList.get(0)); rb_2.setText(stringArrayList.get(1)); } rgb = view.findViewById(R.id.radiogroub); rgb.setOnCheckedChangeListener((RadioGroup group, int checkedId)-> { switch (checkedId){ case R.id.rb1: Log.i(TAG,"第一个被选中"); result = FIRST; break; case R.id.rb2: Log.i(TAG,"第二个被选中"); result = SECOND; break; case R.id.rb3: result = THIRD; break; default:break; } }); button.setOnClickListener(this); } @Override public void onClick(View v) { switch (v.getId()){ case R.id.btn_sure_: if (onSelectedListener != null){ onSelectedListener.makeYourChoice(result); } dismiss(); break; } } public interface OnSelectedListener{ void makeYourChoice(int res); } private OnSelectedListener onSelectedListener; public void setSelectedListener(OnSelectedListener onSelectedListener){ this.onSelectedListener = onSelectedListener; } public static SelectDialogThree newInstance(String... args){ SelectDialogThree sle = new SelectDialogThree(); if (args != null && args.length>=2){ List<String> strs = Arrays.asList(args); ArrayList<String> list = new ArrayList<>(strs); Bundle bundle = new Bundle(); bundle.putStringArrayList("content",list); sle.setArguments(bundle); } return sle; } /** * 隐藏虚拟按键,并且全屏 */ protected void hideBottomUIMenu() { //隐藏虚拟按键,并且全屏 if (Build.VERSION.SDK_INT > 11 && Build.VERSION.SDK_INT < 19) { // lower api View v = this.getDialog().getWindow().getDecorView(); v.setSystemUiVisibility(View.GONE); } else if (Build.VERSION.SDK_INT >= 19) { //for new api versions. View decorView = getDialog().getWindow().getDecorView(); int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY | View.SYSTEM_UI_FLAG_FULLSCREEN; decorView.setSystemUiVisibility(uiOptions); } } @Override public void dismiss() { super.dismiss(); } } app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java
@@ -68,6 +68,7 @@ import safeluck.drive.evaluation.customview.QRCodeDialog; import safeluck.drive.evaluation.customview.SelectDialog; import safeluck.drive.evaluation.customview.SelectDialogThree; import safeluck.drive.evaluation.im.MessageProcessor; import safeluck.drive.evaluation.platformMessage.JKMessage0201; import safeluck.drive.evaluation.platformMessage.JKMessage0202; @@ -574,13 +575,15 @@ // //TODO 发送JKMessage0202 给平台,开始考试 if (btn_start_exam.getText().toString().equalsIgnoreCase("开始训练")){ SelectDialog selectDialog = SelectDialog.newInstance("进行场地训练","进行道路训练"); SelectDialogThree selectDialog = SelectDialogThree.newInstance("场地训练","道路训练","道路训练(不含灯光)"); selectDialog.setSelectedListener((int res)->{ if (res != SelectDialog.SELECT_NONE){ if (res== SelectDialog.FIRST){ if (res== SelectDialogThree.FIRST){ sendJK0202(2); }else{ }else if (res== SelectDialogThree.SECOND){ sendJK0202(3); }else { sendJK0202(4); } } }); app/src/main/java/safeluck/drive/evaluation/util/DataInit.kt
@@ -85,7 +85,7 @@ tempQs.add(list[list.size-2])//提示下面将进行灯光考试 tempQs.add(list[0]) val a = Utils.getRandomInts(4, 11) val a = Utils.getRandomInts(4, 10) for (i in a.indices) { tempQs.add(list[a[i]]) } app/src/main/res/layout/layout_select_dlg_three.xml
New file @@ -0,0 +1,61 @@ <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="260dp" android:layout_height="320dp" android:gravity="center" android:background="@drawable/bg_select_dlg" android:orientation="vertical" > <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:textSize="@dimen/network_train_textsize20px" android:textColor="@android:color/white" android:padding="@dimen/ui_margin_10dp" android:background="@drawable/bg_select_dlg" android:text="请选择一个项目:"/> <RadioGroup android:layout_width="match_parent" android:id="@+id/radiogroub" android:layout_marginRight="@dimen/ui_margin_10dp" android:layout_height="wrap_content"> <RadioButton android:layout_width="match_parent" android:layout_height="@dimen/ui_margin_70dp" android:id="@+id/rb1" android:text="场考地图" android:textSize="@dimen/network_train_textsize24px" android:layout_marginLeft="@dimen/ui_margin_10dp" android:textColor="@android:color/white"/> <RadioButton android:layout_width="match_parent" android:layout_height="@dimen/ui_margin_70dp" android:id="@+id/rb2" android:textSize="@dimen/network_train_textsize24px" android:text="路考地图" android:layout_marginLeft="@dimen/ui_margin_10dp" android:textColor="@android:color/white"/> <RadioButton android:layout_width="match_parent" android:layout_height="@dimen/ui_margin_70dp" android:id="@+id/rb3" android:textSize="@dimen/network_train_textsize24px" android:text="路考地图(不含灯光)" android:layout_marginLeft="@dimen/ui_margin_10dp" android:textColor="@android:color/white"/> </RadioGroup> <Button android:background="@drawable/bg_select_dlg" android:layout_width="match_parent" android:layout_height="@dimen/ui_margin_70dp" android:layout_marginTop="@dimen/ui_margin_10dp" android:text="确定" android:textSize="@dimen/network_train_textsize26px" android:textColor="@android:color/white" android:id="@+id/btn_sure_"/> </LinearLayout> app/src/main/res/values/dimens.xml
@@ -21,4 +21,5 @@ <dimen name="ui_margin_40dp">40dp</dimen> <dimen name="ui_margin_45dp">45dp</dimen> <dimen name="ui_margin_35dp">35dp</dimen> <dimen name="ui_margin_70dp">70dp</dimen> </resources>