diff --git a/app/build.gradle b/app/build.gradle
index b8d6c9d..298261f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -36,6 +36,7 @@ android {
}
dependencies {
+ implementation 'androidx.preference:preference:1.2.1'
def room_version = "2.5.0"
implementation "androidx.room:room-runtime:$room_version"
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 0f97cd3..6f1bca4 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -23,17 +23,13 @@
android:resource="@xml/file_paths">
-
diff --git a/app/src/main/java/com/lsp/view/activity/SettingsActivity.kt b/app/src/main/java/com/lsp/view/activity/SettingsActivity.kt
deleted file mode 100644
index d1e9be8..0000000
--- a/app/src/main/java/com/lsp/view/activity/SettingsActivity.kt
+++ /dev/null
@@ -1,45 +0,0 @@
-package com.lsp.view.activity
-
-import android.os.Bundle
-import android.view.MenuItem
-import androidx.appcompat.app.AppCompatActivity
-import androidx.appcompat.widget.Toolbar
-import androidx.preference.PreferenceFragmentCompat
-import com.lsp.view.R
-
-class SettingsActivity : AppCompatActivity() {
-
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setContentView(R.layout.settings_activity)
-
- val toolbar = findViewById(R.id.toolbar)
- setSupportActionBar(toolbar)
-
- if (savedInstanceState == null) {
- supportFragmentManager
- .beginTransaction()
- .replace(R.id.settings, SettingsFragment())
- .commit()
- }
- supportActionBar?.setDisplayHomeAsUpEnabled(true)
-
- }
-
- override fun onOptionsItemSelected(item: MenuItem): Boolean {
- when (item.itemId) {
- android.R.id.home -> {
- finish()
- }
- }
-
- return super.onOptionsItemSelected(item)
-
- }
-
- class SettingsFragment : PreferenceFragmentCompat() {
- override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
- setPreferencesFromResource(R.xml.root_preferences, rootKey)
- }
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/lsp/view/model/MainViewModel.kt b/app/src/main/java/com/lsp/view/ui/MainViewModel.kt
similarity index 98%
rename from app/src/main/java/com/lsp/view/model/MainViewModel.kt
rename to app/src/main/java/com/lsp/view/ui/MainViewModel.kt
index 2dbbe3d..4390abd 100644
--- a/app/src/main/java/com/lsp/view/model/MainViewModel.kt
+++ b/app/src/main/java/com/lsp/view/ui/MainViewModel.kt
@@ -1,4 +1,4 @@
-package com.lsp.view.model
+package com.lsp.view.ui
import android.content.Context
import android.os.Bundle
@@ -8,7 +8,7 @@ import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.SavedStateHandle
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
-import com.lsp.view.fragment.adapter.PostAdapter
+import com.lsp.view.ui.fragment.adapter.PostAdapter
import com.lsp.view.repository.network.PostRepository
import androidx.savedstate.SavedStateRegistryOwner
import com.lsp.view.YandViewApplication
@@ -18,7 +18,6 @@ import com.lsp.view.repository.datasource.CollectRepository
import com.lsp.view.repository.datasource.CollectRepositoryImpl
import com.lsp.view.repository.datasource.model.Collect
import com.lsp.view.repository.exception.NetworkErrorException
-import com.lsp.view.ui.UiState
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.Job
import kotlinx.coroutines.async
diff --git a/app/src/main/java/com/lsp/view/activity/MainActivity.kt b/app/src/main/java/com/lsp/view/ui/activity/MainActivity.kt
similarity index 86%
rename from app/src/main/java/com/lsp/view/activity/MainActivity.kt
rename to app/src/main/java/com/lsp/view/ui/activity/MainActivity.kt
index 19a2f72..f7daccf 100644
--- a/app/src/main/java/com/lsp/view/activity/MainActivity.kt
+++ b/app/src/main/java/com/lsp/view/ui/activity/MainActivity.kt
@@ -1,4 +1,4 @@
-package com.lsp.view.activity
+package com.lsp.view.ui.activity
import android.os.Bundle
import android.util.Log
@@ -8,7 +8,7 @@ import androidx.navigation.fragment.NavHostFragment
import androidx.navigation.ui.setupWithNavController
import com.google.android.material.bottomnavigation.BottomNavigationView
import com.lsp.view.R
-import com.lsp.view.model.MainViewModel
+import com.lsp.view.ui.MainViewModel
import com.lsp.view.repository.network.PostRepository
@@ -31,12 +31,6 @@ class MainActivity : AppCompatActivity() {
Toast.makeText(this,it,Toast.LENGTH_SHORT).show()
}
- //接收来自PicActivity的快捷搜索Tag
- val stringExtra = intent.getStringExtra("searchTag")
- if (stringExtra!=null){
- viewModel.uiState.value.nowSearchText.value = stringExtra
- }
-
val navHostFragment = supportFragmentManager.findFragmentById(R.id.nav_host_fragment) as NavHostFragment
val navController = navHostFragment.navController
bottomNav.setupWithNavController(navController)
diff --git a/app/src/main/java/com/lsp/view/fragment/CollectFragment.kt b/app/src/main/java/com/lsp/view/ui/fragment/CollectFragment.kt
similarity index 95%
rename from app/src/main/java/com/lsp/view/fragment/CollectFragment.kt
rename to app/src/main/java/com/lsp/view/ui/fragment/CollectFragment.kt
index 7cf633b..aff9c04 100644
--- a/app/src/main/java/com/lsp/view/fragment/CollectFragment.kt
+++ b/app/src/main/java/com/lsp/view/ui/fragment/CollectFragment.kt
@@ -1,4 +1,4 @@
-package com.lsp.view.fragment
+package com.lsp.view.ui.fragment
import android.os.Bundle
import androidx.fragment.app.Fragment
@@ -9,9 +9,9 @@ import android.view.animation.AnimationUtils
import androidx.navigation.Navigation
import androidx.recyclerview.widget.RecyclerView
import androidx.recyclerview.widget.StaggeredGridLayoutManager
-import com.lsp.view.fragment.adapter.PostAdapter
+import com.lsp.view.ui.fragment.adapter.PostAdapter
import com.lsp.view.R
-import com.lsp.view.activity.MainActivity
+import com.lsp.view.ui.activity.MainActivity
import com.lsp.view.bean.Post
/**
diff --git a/app/src/main/java/com/lsp/view/fragment/ImageFragment.kt b/app/src/main/java/com/lsp/view/ui/fragment/ImageFragment.kt
similarity index 98%
rename from app/src/main/java/com/lsp/view/fragment/ImageFragment.kt
rename to app/src/main/java/com/lsp/view/ui/fragment/ImageFragment.kt
index 5ef2009..34c1ab1 100644
--- a/app/src/main/java/com/lsp/view/fragment/ImageFragment.kt
+++ b/app/src/main/java/com/lsp/view/ui/fragment/ImageFragment.kt
@@ -1,4 +1,4 @@
-package com.lsp.view.fragment
+package com.lsp.view.ui.fragment
import android.content.Context
import android.content.Intent
@@ -23,7 +23,7 @@ import com.google.android.material.bottomappbar.BottomAppBar
import com.google.android.material.floatingactionbutton.FloatingActionButton
import com.lsp.view.R
import com.lsp.view.YandViewApplication
-import com.lsp.view.activity.MainActivity
+import com.lsp.view.ui.activity.MainActivity
import com.lsp.view.bean.Post
import com.lsp.view.repository.datasource.model.Collect
import com.lsp.view.repository.datasource.model.Collect.Companion.toCollect
diff --git a/app/src/main/java/com/lsp/view/fragment/PostListFragment.kt b/app/src/main/java/com/lsp/view/ui/fragment/PostListFragment.kt
similarity index 91%
rename from app/src/main/java/com/lsp/view/fragment/PostListFragment.kt
rename to app/src/main/java/com/lsp/view/ui/fragment/PostListFragment.kt
index 802c1ca..6934cef 100644
--- a/app/src/main/java/com/lsp/view/fragment/PostListFragment.kt
+++ b/app/src/main/java/com/lsp/view/ui/fragment/PostListFragment.kt
@@ -1,4 +1,4 @@
-package com.lsp.view.fragment
+package com.lsp.view.ui.fragment
import android.os.Bundle
import android.view.LayoutInflater
@@ -13,15 +13,17 @@ import androidx.recyclerview.widget.RecyclerView
import androidx.recyclerview.widget.StaggeredGridLayoutManager
import com.google.android.material.search.SearchBar
import com.google.android.material.search.SearchView
-import com.lsp.view.fragment.adapter.PostAdapter
+import com.lsp.view.ui.fragment.adapter.PostAdapter
import com.lsp.view.R
-import com.lsp.view.activity.MainActivity
+import com.lsp.view.ui.activity.MainActivity
import com.lsp.view.bean.Post
-import com.lsp.view.model.MainViewModel
+import com.lsp.view.ui.MainViewModel
class PostListFragment:Fragment() {
private val viewModel: MainViewModel by lazy {
- ViewModelProvider(requireActivity(),MainViewModel.provideFactory(activityContext.repository,requireContext(),this)).get(MainViewModel::class.java)
+ ViewModelProvider(requireActivity(),
+ MainViewModel.provideFactory(activityContext.repository,requireContext(),this)).get(
+ MainViewModel::class.java)
}
private lateinit var activityContext: MainActivity
diff --git a/app/src/main/java/com/lsp/view/fragment/adapter/PostAdapter.kt b/app/src/main/java/com/lsp/view/ui/fragment/adapter/PostAdapter.kt
similarity index 99%
rename from app/src/main/java/com/lsp/view/fragment/adapter/PostAdapter.kt
rename to app/src/main/java/com/lsp/view/ui/fragment/adapter/PostAdapter.kt
index 029ce70..bea93f1 100644
--- a/app/src/main/java/com/lsp/view/fragment/adapter/PostAdapter.kt
+++ b/app/src/main/java/com/lsp/view/ui/fragment/adapter/PostAdapter.kt
@@ -1,4 +1,4 @@
-package com.lsp.view.fragment.adapter
+package com.lsp.view.ui.fragment.adapter
import android.content.Context
import android.view.LayoutInflater
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index 241f030..a043707 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -5,7 +5,7 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
- tools:context=".activity.MainActivity">
+ tools:context=".ui.activity.MainActivity">
+ tools:context=".ui.fragment.CollectFragment">
diff --git a/app/src/main/res/layout/fragment_image.xml b/app/src/main/res/layout/fragment_image.xml
index 0cac65a..a9ab0f0 100644
--- a/app/src/main/res/layout/fragment_image.xml
+++ b/app/src/main/res/layout/fragment_image.xml
@@ -4,7 +4,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
- tools:context=".fragment.ImageFragment">
+ tools:context=".ui.fragment.ImageFragment">
-
+
-
+
+ app:key="safe_mode"
+ app:title="@string/setting_item_safe_model" />
diff --git a/build.gradle b/build.gradle
index 74b1d8b..5453c0b 100644
--- a/build.gradle
+++ b/build.gradle
@@ -17,6 +17,7 @@ buildscript {
plugins {
id 'com.google.devtools.ksp' version '1.9.20-1.0.14' apply false
+ id 'org.jetbrains.kotlin.android' version '1.9.0' apply false
}
allprojects {