lizhanwei
2020-02-14 4e307b0d89c9a84916bbbc2119e41d34c6badc13
app/src/main/java/safeluck/drive/evaluation/fragment/SignalConfigFragment.java
@@ -2,12 +2,17 @@
import android.content.Context;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.util.Log;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.ListView;
@@ -18,6 +23,7 @@
import androidx.appcompat.widget.Toolbar;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import me.yokeyword.fragmentation.SupportFragment;
@@ -38,6 +44,7 @@
    private Toolbar mToobar;
    private ListView listView;
    private LinearLayout linearLayout;
    private static final String TAG = SignalConfigFragment.class.getSimpleName();
    public static SupportFragment newInstance(){
        return new SignalConfigFragment();
    }
@@ -71,13 +78,13 @@
        signalConfiglist .add(new SignalConfigBean("安全带","脚刹",false,true,true,false,3,4));
        signalConfiglist .add(new SignalConfigBean("熄火","绕车1",false,true,true,false,5,6));
        signalConfiglist .add(new SignalConfigBean("门锁","绕车2",false,true,true,false,7,8));
        signalConfiglist .add(new SignalConfigBean("手刹","离合",true,false,true,false,1,2));
        signalConfiglist .add(new SignalConfigBean("左转向","1档",false,true,true,false,3,4));
        signalConfiglist .add(new SignalConfigBean("右转向","2档",false,true,true,false,5,6));
        signalConfiglist .add(new SignalConfigBean("近光灯","3档",false,true,true,false,7,8));
        signalConfiglist .add(new SignalConfigBean("远光灯","4档",false,true,true,false,7,8));
        signalConfiglist .add(new SignalConfigBean("雾灯","雨刷",false,true,true,false,7,8));
        signalConfiglist .add(new SignalConfigBean("示宽灯","无",false,true,true,false,7,8));
        signalConfiglist .add(new SignalConfigBean("手刹","离合",true,false,true,false,9,10));
        signalConfiglist .add(new SignalConfigBean("左转向","1档",false,true,true,false,11,12));
        signalConfiglist .add(new SignalConfigBean("右转向","2档",false,true,true,false,13,14));
        signalConfiglist .add(new SignalConfigBean("近光灯","3档",false,true,true,false,15,16));
        signalConfiglist .add(new SignalConfigBean("远光灯","4档",false,true,true,false,17,18));
        signalConfiglist .add(new SignalConfigBean("雾灯","雨刷",false,true,true,false,19,20));
        signalConfiglist .add(new SignalConfigBean("示宽灯","无",false,true,true,false,21,22));
        listView.setAdapter(mySignalsAdapter);
@@ -111,19 +118,97 @@
        }
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            ViewHolder viewHolder;
        public View getView(final int position, View convertView, ViewGroup parent) {
            final ViewHolder viewHolder;
            if (convertView == null){
                convertView = LayoutInflater.from(context).inflate(R.layout.layout_signal_conf_item,null);
                viewHolder = new ViewHolder(convertView);
                viewHolder.editText1.addTextChangedListener(new TextWatcher() {
                    @Override
                    public void beforeTextChanged(CharSequence s, int start, int count, int after) {
                    }
                    @Override
                    public void onTextChanged(CharSequence s, int start, int before, int count) {
                    }
                    @Override
                    public void afterTextChanged(Editable s) {
                        Log.i(TAG, "et1 afterTextChanged: "+s.toString());
                        String str = s.toString();
                        int a = Integer.parseInt(str);
                        signalConfiglist.get(position).setPort_one(a);
                    }
                });
                viewHolder.editText2.addTextChangedListener(new TextWatcher() {
                    @Override
                    public void beforeTextChanged(CharSequence s, int start, int count, int after) {
                    }
                    @Override
                    public void onTextChanged(CharSequence s, int start, int before, int count) {
                    }
                    @Override
                    public void afterTextChanged(Editable s) {
                        Log.i(TAG, "et2 afterTextChanged: "+s.toString());
                        String str = s.toString();
                        int a = Integer.parseInt(str);
                        signalConfiglist.get(position).setPort_two(a);
                    }
                });
                viewHolder.checkBox3.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
                    @Override
                    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                        SignalConfigBean signalConfigBean = (SignalConfigBean) viewHolder.checkBox3.getTag();
                        signalConfigBean.setThree(isChecked);
                    }
                });
                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) {
                        SignalConfigBean signalConfigBean = (SignalConfigBean) viewHolder.checkBox1.getTag();
                        signalConfigBean.setOne(isChecked);
                    }
                });
                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));
            }
            SignalConfigBean signalConfigItem = getItem(position);
            viewHolder.editText1.setTag(position);
            viewHolder.editText2.setTag(position);
            final SignalConfigBean signalConfigItem = getItem(position);
            viewHolder.textView1.setText(signalConfigItem.getSignal_name_first());
            viewHolder.textView2.setText(signalConfigItem.getSignal_name_second());
            viewHolder.editText1.setText(String.valueOf(signalConfigItem.getPort_one()));
            viewHolder.editText2.setText(String.valueOf(signalConfigItem.getPort_two()));
@@ -147,7 +232,7 @@
            TextView textView2;
            public ViewHolder(View convertView) {
            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);
@@ -162,4 +247,6 @@
        }
    }
}