规则设置采用viewmodel+livedata 保存json文件到报名下的方式  保存按钮需要调整
4个文件已修改
2个文件已添加
116 ■■■■ 已修改文件
app/src/main/java/safeluck/drive/evaluation/adapter/SimpleFragmentAdapter.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/fragment/rulefragments/FragmentSetting0.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/viewmodels/GearRelateSet.kt 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/viewmodels/GearRelateSetViewModel.kt 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/layout/fragment_content.xml 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/layout/fragment_gear_setting.xml 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/adapter/SimpleFragmentAdapter.java
@@ -20,7 +20,7 @@
 * All Rights Saved! Chongqing AnYun Tech co. LTD
 */
public class SimpleFragmentAdapter  extends FragmentPagerAdapter {
    private String[] mTitles = new String[]{"基础数据","GNSS信息"};
    private String[] mTitles = new String[]{"基础数据","考试系统设置"};
//    private String[] mTitles = new String[]{"基础数据","GNSS信息","考试系统设置"};
    public SimpleFragmentAdapter(FragmentManager fm) {
        super(fm);
@@ -38,12 +38,10 @@
//                supportFragment = RTKConfigFragment.newInstance();
//                //ftp
//                break;
//            case 2:
//                supportFragment = SysExamSettingFragment.newInstance();
//                break;
                        case 1:
                supportFragment = GpsInfoFragment.newInstance();
                supportFragment = SysExamSettingFragment.newInstance();
                break;
                default:break;
        }
        return supportFragment;
app/src/main/java/safeluck/drive/evaluation/fragment/rulefragments/FragmentSetting0.java
@@ -7,13 +7,18 @@
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import me.yokeyword.fragmentation.SupportFragment;
import safeluck.drive.evaluation.R;
import safeluck.drive.evaluation.fragment.rulefragments.cview.TextEditText;
import safeluck.drive.evaluation.viewmodels.GearRelateSet;
import safeluck.drive.evaluation.viewmodels.GearRelateSetViewModel;
/**
 * Created by YoKeyword on 16/2/7.
@@ -22,6 +27,8 @@
    private static final String ARG_NUMBER = "arg_number";
    private static final String TAG = FragmentSetting0.class.getSimpleName();
    private TextEditText textEditText;
    private GearRelateSet mgearRelateSet;
    private GearRelateSetViewModel gearRelateSetViewModel ;
    private int mNumber;
@@ -48,12 +55,32 @@
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.fragment_gear_setting, container, false);
        initView(view);
        gearRelateSetViewModel = ViewModelProviders.of(this).get(GearRelateSetViewModel.class);
        gearRelateSetViewModel.getGearRelateSet().observe(this, new Observer<GearRelateSet>() {
            @Override
            public void onChanged(GearRelateSet gearRelateSet) {
                if (gearRelateSet != null){
                    Toast.makeText(_mActivity, gearRelateSet.toString(), Toast.LENGTH_SHORT).show();
                    mgearRelateSet = gearRelateSet;
                }
            }
        });
        return view;
    }
    private void initView(View view) {
//        textEditText = view.findViewById(R.id.textet1);
//        textEditText.getInput();
        view.findViewById(R.id.btn_setting_save).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                mgearRelateSet.setGear_one_begin(0);
                gearRelateSetViewModel.saveGearRelatedSetting(mgearRelateSet);
            }
        });
    }
}
app/src/main/java/safeluck/drive/evaluation/viewmodels/GearRelateSet.kt
New file
@@ -0,0 +1,12 @@
package safeluck.drive.evaluation.viewmodels
/**DriveJudge
 * Created by lzw on 2020/10/9. 14:27:54
 * 邮箱:632393724@qq.com
 * All Rights Saved! Chongqing AnYun Tech co. LTD
 */
data class GearRelateSet(var gear_not_match_seconds:Long,
                         var gear_item_gear_not_match_mills:Long,
                         var gear_one_dis:Int,
var gear_tw_dis:Int,var gear_one_begin:Int,var gear_one_end:Int
)
app/src/main/java/safeluck/drive/evaluation/viewmodels/GearRelateSetViewModel.kt
New file
@@ -0,0 +1,44 @@
package safeluck.drive.evaluation.viewmodels
import android.app.Application
import androidx.lifecycle.*
import com.google.gson.Gson
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import safeluck.drive.evaluation.app
import safeluck.drive.evaluation.util.CThreadPoolExecutor
import safeluck.drive.evaluation.util.FileUtil
/**DriveJudge
 * Created by lzw on 2020/10/9. 14:22:48
 * 邮箱:632393724@qq.com
 * All Rights Saved! Chongqing AnYun Tech co. LTD
 */
class GearRelateSetViewModel() : ViewModel() {
    var gson = Gson()
    private val gearRelateSet:MutableLiveData<GearRelateSet> by lazy {
        MutableLiveData<GearRelateSet>().also {
            loadData()
        }
    }
    fun saveGearRelatedSetting(gearRelateSet: GearRelateSet){
        CThreadPoolExecutor.runInBackground {
            FileUtil.writeTxtFileToSD(app.getAppContext(),"test.json",gson.toJson(gearRelateSet),"")
        }
    }
    private fun loadData(){
        CThreadPoolExecutor.runInBackground {
           var buffer =FileUtil.readTxtFileFromSD(app.getAppContext(),"test.json",false)
            var g = gson.fromJson(buffer.toString(),GearRelateSet::class.java)
            gearRelateSet.postValue(g)
        }
    }
    fun getGearRelateSet():LiveData<GearRelateSet> {
        return gearRelateSet
    }
}
app/src/main/res/layout/fragment_content.xml
@@ -20,17 +20,6 @@
        android:textSize="26sp"/>
-->
    <Button
    android:id="@+id/btn_next"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginLeft="16dp"
    android:layout_marginRight="16dp"
    android:layout_marginTop="32dp"
        android:background="@drawable/route_item_select_bg"
    android:textAllCaps="false"
        android:textColor="@android:color/white"
        android:textSize="@dimen/network_train_textsize32px"
    android:text="保存"/>
</LinearLayout>
app/src/main/res/layout/fragment_gear_setting.xml
@@ -110,5 +110,17 @@
        android:id="@+id/tedit_4_gea_r"
        />
    </LinearLayout>
    <Button
        android:id="@+id/btn_setting_save"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="16dp"
        android:layout_marginRight="16dp"
        android:layout_marginTop="32dp"
        android:background="@drawable/route_item_select_bg"
        android:textAllCaps="false"
        android:textColor="@android:color/white"
        android:textSize="@dimen/network_train_textsize32px"
        android:text="保存"/>
</LinearLayout>
</ScrollView>