From 9ce66a60767c49de97aed2ff4ea9a3370e4a356e Mon Sep 17 00:00:00 2001
From: endian11 <Dana_Lee1016@126.com>
Date: 星期六, 10 十月 2020 14:46:32 +0800
Subject: [PATCH] 规则设置采用viewmodel+livedata 保存json文件到报名下的方式 保存按钮需要调整
---
app/src/main/java/safeluck/drive/evaluation/viewmodels/GearRelateSetViewModel.kt | 44 ++++++++++++++++++++++
app/src/main/java/safeluck/drive/evaluation/adapter/SimpleFragmentAdapter.java | 10 ++---
app/src/main/res/layout/fragment_gear_setting.xml | 12 ++++++
app/src/main/java/safeluck/drive/evaluation/fragment/rulefragments/FragmentSetting0.java | 27 +++++++++++++
app/src/main/res/layout/fragment_content.xml | 13 ------
app/src/main/java/safeluck/drive/evaluation/viewmodels/GearRelateSet.kt | 12 ++++++
6 files changed, 100 insertions(+), 18 deletions(-)
diff --git a/app/src/main/java/safeluck/drive/evaluation/adapter/SimpleFragmentAdapter.java b/app/src/main/java/safeluck/drive/evaluation/adapter/SimpleFragmentAdapter.java
index 7b2f7b0..c60c585 100644
--- a/app/src/main/java/safeluck/drive/evaluation/adapter/SimpleFragmentAdapter.java
+++ b/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();
+ case 1:
+ supportFragment = SysExamSettingFragment.newInstance();
break;
+
default:break;
}
return supportFragment;
diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/rulefragments/FragmentSetting0.java b/app/src/main/java/safeluck/drive/evaluation/fragment/rulefragments/FragmentSetting0.java
index a061f89..2a097cd 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/rulefragments/FragmentSetting0.java
+++ b/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);
+ }
+ });
+
}
}
diff --git a/app/src/main/java/safeluck/drive/evaluation/viewmodels/GearRelateSet.kt b/app/src/main/java/safeluck/drive/evaluation/viewmodels/GearRelateSet.kt
new file mode 100644
index 0000000..d41dfd1
--- /dev/null
+++ b/app/src/main/java/safeluck/drive/evaluation/viewmodels/GearRelateSet.kt
@@ -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
+)
\ No newline at end of file
diff --git a/app/src/main/java/safeluck/drive/evaluation/viewmodels/GearRelateSetViewModel.kt b/app/src/main/java/safeluck/drive/evaluation/viewmodels/GearRelateSetViewModel.kt
new file mode 100644
index 0000000..c70eefe
--- /dev/null
+++ b/app/src/main/java/safeluck/drive/evaluation/viewmodels/GearRelateSetViewModel.kt
@@ -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
+ }
+}
+
diff --git a/app/src/main/res/layout/fragment_content.xml b/app/src/main/res/layout/fragment_content.xml
index d059495..53d21a1 100644
--- a/app/src/main/res/layout/fragment_content.xml
+++ b/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>
diff --git a/app/src/main/res/layout/fragment_gear_setting.xml b/app/src/main/res/layout/fragment_gear_setting.xml
index b69d301..e7c03f9 100644
--- a/app/src/main/res/layout/fragment_gear_setting.xml
+++ b/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>
\ No newline at end of file
--
Gitblit v1.8.0