From 2e8d8a63815c87318e69a50386292d9c97c5d11b Mon Sep 17 00:00:00 2001 From: Raymond Yang Date: Mon, 6 Feb 2023 10:55:45 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=87=E5=88=86=E5=89=B2=E8=A8=AD=E5=AE=9A?= =?UTF-8?q?=E5=80=BC=E5=AD=98=E5=85=A5Shared=20Preference=E5=85=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/AndroidManifest.xml | 1 + .../gstreamer_demo_app/MyApplication.kt | 48 +++++++++++++++++++ .../gstreamer_demo_app/PreferenceUtil.kt | 24 ++++++++++ .../ui/mainScreen/MainActivity.kt | 5 -- .../ui/mainScreen/MainViewModel.kt | 23 +++------ 5 files changed, 79 insertions(+), 22 deletions(-) create mode 100644 app/src/main/java/com/ray650128/gstreamer_demo_app/MyApplication.kt create mode 100644 app/src/main/java/com/ray650128/gstreamer_demo_app/PreferenceUtil.kt diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 3b5a07d..c0683c0 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -3,6 +3,7 @@ package="com.ray650128.gstreamer_demo_app"> by lazy { MutableLiveData() } val cameraList: MediatorLiveData>> by lazy { @@ -125,21 +114,21 @@ class MainViewModel: ViewModel() { } init { - setSplitMode(PAGE_MODE_ONE) + splitMode.postValue(PreferenceUtil.lastSplitMode) } fun setSplitMode(mode: Int) { - splitModeInt = mode - splitMode.postValue(splitModeInt) + PreferenceUtil.lastSplitMode = mode + splitMode.postValue(PreferenceUtil.lastSplitMode) } private fun updateCameraList(dbData: List?): List>? { if (dbData.isNullOrEmpty()) return null val tmpData = ArrayList>() - for (index in uriList.indices step (splitModeInt)) { + for (index in uriList.indices step (PreferenceUtil.lastSplitMode)) { if (index == uriList.size) break val tmpSubData = ArrayList() - for (subIndex in 0 until (splitModeInt)) { + for (subIndex in 0 until (PreferenceUtil.lastSplitMode)) { val dataIndex = index + subIndex if (dataIndex !in uriList.indices) break tmpSubData.add(uriList[dataIndex])