app/src/main/java/safeluck/drive/evaluation/MainActivity.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/safeluck/drive/evaluation/customview/MyCustomCheckbox.kt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/safeluck/drive/evaluation/fragment/SignalConfigFragment.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/res/layout/layout_signal_conf_item.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/res/layout/layout_signal_config.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
app/src/main/java/safeluck/drive/evaluation/MainActivity.java
@@ -271,32 +271,7 @@ CEventCenter.onBindEvent(false, icEventListener, Constant.BIND_CONNECT_RTK_TOPIC); Log.i(TAG, "onDestroy: "); } private void sendSignalConfigsToRemote() { if (signalConfiglist.size()>0){ new AsyncTask<Void, Void, List<Integer>>( ) { @Override protected List<Integer> doInBackground(Void... voids) { return signalConfigViewModel.getAllIndexs(); } @Override protected void onPostExecute(List<Integer> indexs) { if (listContainsSameValue(indexs)){ Log.i(TAG, "sendSignalConfigsToRemote: 有相同的index,不能发送"+gson.toJson(signalConfiglist)); Toast.makeText(getApplicationContext(), "不能有相同的物理所引!", Toast.LENGTH_SHORT).show(); }else{ AYSdk.getInstance().sendCmd(Constant.SEND_CONFIG_SIGNAL,gson.toJson(signalConfiglist)); } } }.execute(); } } @Override protected void onResume() { app/src/main/java/safeluck/drive/evaluation/customview/MyCustomCheckbox.kt
New file @@ -0,0 +1,40 @@ package safeluck.drive.evaluation.customview import android.content.Context import android.graphics.Canvas import android.util.AttributeSet import android.view.Gravity import android.widget.CheckBox /** * * @ProjectName: DriveJudge * @Package: safeluck.drive.evaluation.customview * @ClassName: MyCustomCheckbox * @Description: java类作用描述 * @Author: 李占伟 * @CreateDate: 2020-04-24 13:17 * @UpdateUser: 更新者 * @UpdateDate: 2020-04-24 13:17 * @UpdateRemark: 更新说明 * @Version: 1.0 */ class MyCustomCheckbox :CheckBox{ constructor(context:Context):this(context,null) constructor(context:Context,attrs:AttributeSet?):this(context,attrs,0) constructor(context:Context,attrs:AttributeSet?,defStyleAttr:Int): super(context,attrs,defStyleAttr) override fun onDraw(canvas: Canvas?) { super.onDraw(canvas) var drawables = compoundDrawables var drawable = drawables[0] var gravity = gravity var left = 0 if (Gravity.CENTER== gravity){ left = (((getWidth() - drawable.getIntrinsicWidth() - getPaint().measureText(getText().toString())) / 2).toInt()) } drawable.setBounds(left, 0, left + drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight()) } } app/src/main/java/safeluck/drive/evaluation/fragment/SignalConfigFragment.java
@@ -105,10 +105,7 @@ mToobar = view.findViewById(R.id.toolbar); linearLayout = view.findViewById(R.id.ll_container); mToobar.setTitle("信号配置"); listView =new ListView(_mActivity); ViewGroup.LayoutParams layoutParams = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT); listView.setLayoutParams(layoutParams); linearLayout.addView(listView); listView =view.findViewById(R.id.lv_signalconf); listView.setDivider(null); final MySignalsAdapter mySignalsAdapter = new MySignalsAdapter(_mActivity); @@ -190,39 +187,20 @@ } }); viewHolder.checkBox4.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { SignalConfigBean signalConfigBean = (SignalConfigBean) viewHolder.checkBox4.getTag(); signalConfigBean.setFour(isChecked); } });viewHolder.checkBox2.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { SignalConfigBean signalConfigBean = (SignalConfigBean) viewHolder.checkBox2.getTag(); signalConfigBean.setTwo(isChecked); } });viewHolder.checkBox1.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { viewHolder.checkBox1.setOnCheckedChangeListener((buttonView,isChecked)-> { SignalConfigBean signalConfigBean = (SignalConfigBean) viewHolder.checkBox1.getTag(); signalConfigBean.setOne(isChecked); signalConfigViewModel.updateHightlevel(isChecked?1:0,position*2); } }); convertView.setTag(viewHolder); viewHolder.checkBox1.setTag(signalConfiglist.get(position)); viewHolder.checkBox2.setTag(signalConfiglist.get(position)); viewHolder.checkBox3.setTag(signalConfiglist.get(position)); viewHolder.checkBox4.setTag(signalConfiglist.get(position)); }else { viewHolder = (ViewHolder) convertView.getTag(); viewHolder.checkBox1.setTag(signalConfiglist.get(position)); viewHolder.checkBox2.setTag(signalConfiglist.get(position)); viewHolder.checkBox3.setTag(signalConfiglist.get(position)); viewHolder.checkBox4.setTag(signalConfiglist.get(position)); } viewHolder.editText1.setTag(position*2); viewHolder.editText2.setTag((position*2+1)); @@ -238,18 +216,14 @@ viewHolder.editText2.setText(String.valueOf(signalConfigItem.getPort_two())); viewHolder.checkBox1.setChecked(signalConfigItem.isOne()); viewHolder.checkBox2.setChecked(signalConfigItem.isTwo()); viewHolder.checkBox3.setChecked(signalConfigItem.isThree()); viewHolder.checkBox4.setChecked(signalConfigItem.isFour()); return convertView; } class ViewHolder{ CheckBox checkBox1; CheckBox checkBox2; CheckBox checkBox3; CheckBox checkBox4; EditText editText1; EditText editText2; TextView textView1; @@ -258,9 +232,7 @@ public ViewHolder(final View convertView) { checkBox1 = convertView.findViewById(R.id.signal_check_1); checkBox2 = convertView.findViewById(R.id.signal_check_2); checkBox3 = convertView.findViewById(R.id.signal_check_3); checkBox4 = convertView.findViewById(R.id.signal_check_4); editText1 = convertView.findViewById(R.id.et_signal1_port); editText2 = convertView.findViewById(R.id.et_signal2_port); app/src/main/res/layout/layout_signal_conf_item.xml
@@ -1,43 +1,40 @@ <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:gravity="center" android:layout_height="100dp"> android:paddingBottom="8dp" android:gravity="center_vertical" android:layout_height="50dp"> <TextView android:layout_width="0dp" android:layout_weight="1" android:id="@+id/tv_signal_1" android:textColor="@android:color/white" android:layout_height="wrap_content" android:layout_height="32dp" android:textAlignment="center" android:gravity="center_vertical" android:textSize="@dimen/network_train_textsize22px" android:gravity="center" android:text="喇叭"/> <EditText android:layout_width="0dp" android:textColor="@android:color/white" android:layout_weight="1" android:textColor="@android:color/white" android:gravity="center" android:layout_height="wrap_content" android:layout_height="32dp" android:id="@+id/et_signal1_port" android:background="@drawable/tv_des_bg" android:textSize="@dimen/network_train_textsize22px" android:text="0"/> <CheckBox android:layout_width="0dp" android:layout_weight="1" android:layout_gravity="center" android:id="@+id/signal_check_1" android:layout_height="wrap_content" android:checked="true"/> <CheckBox <safeluck.drive.evaluation.customview.MyCustomCheckbox android:layout_width="0dp" android:layout_weight="1" android:gravity="center" android:id="@+id/signal_check_2" android:layout_height="wrap_content" android:button="@null" android:layout_gravity="center_vertical" android:drawableStart="@drawable/ic_check" android:id="@+id/signal_check_1" android:layout_height="@dimen/ui_margin_30dp" android:checked="true"/> <TextView android:layout_width="0dp" android:layout_weight="1" @@ -45,7 +42,7 @@ android:textSize="@dimen/network_train_textsize22px" android:gravity="center" android:id="@+id/tv_signal_2" android:layout_height="wrap_content" android:layout_height="32dp" android:text="喇叭"/> <EditText android:layout_width="0dp" @@ -55,18 +52,16 @@ android:textSize="@dimen/network_train_textsize22px" android:background="@drawable/tv_des_bg" android:id="@+id/et_signal2_port" android:layout_height="wrap_content" android:layout_height="32dp" android:text="0"/> <CheckBox android:layout_width="0dp" <safeluck.drive.evaluation.customview.MyCustomCheckbox android:layout_width="wrap_content" android:layout_weight="1" android:button="@null" android:drawableStart="@drawable/ic_check" android:gravity="center" android:id="@+id/signal_check_3" android:layout_height="wrap_content" android:layout_height="@dimen/ui_margin_30dp" android:checked="true"/> <CheckBox android:layout_width="0dp" android:layout_weight="1" android:id="@+id/signal_check_4" android:layout_height="wrap_content" android:checked="true"/> </LinearLayout> app/src/main/res/layout/layout_signal_config.xml
@@ -6,10 +6,9 @@ android:layout_height="match_parent" android:orientation="vertical" android:id="@+id/ll_container" android:layout_marginLeft="@dimen/ui_margin_10dp" android:layout_marginRight="@dimen/ui_margin_10dp" android:layout_marginBottom="@dimen/ui_margin_25dp" android:background="@drawable/stu_score_bg" > <include layout="@layout/toolbar"/> <LinearLayout @@ -26,7 +25,7 @@ android:gravity="center" android:textSize="15sp" android:textColor="#ff888995" android:text="信号名称"/> android:text="物理通道"/> <TextView android:layout_width="0dp" android:layout_weight="1" @@ -34,7 +33,7 @@ android:textColor="#ff888995" android:gravity="center" android:layout_height="wrap_content" android:text="物理索引"/> android:text="信号名称"/> <TextView android:layout_width="0dp" android:layout_weight="1" @@ -44,14 +43,7 @@ android:textColor="#ff888995" android:text="高电平有效"/> <TextView android:layout_width="0dp" android:layout_weight="1" android:layout_height="wrap_content" android:gravity="center" android:textSize="15sp" android:textColor="#ff888995" android:text="主板有效"/> <TextView android:layout_width="0dp" android:layout_weight="1" @@ -77,16 +69,13 @@ android:gravity="center" android:text="高电平有效"/> <TextView android:layout_width="0dp" android:layout_weight="1" android:layout_height="wrap_content" android:textSize="15sp" android:textColor="#ff888995" android:gravity="center" android:text="主板有效"/> </LinearLayout> <ListView android:layout_width="match_parent" android:id="@+id/lv_signalconf" android:layout_height="match_parent"/> </LinearLayout> <FrameLayout