From 7d56dbe31c708f24b5ff2a304be8cc10ecd5313e Mon Sep 17 00:00:00 2001 From: Xwite <1797350009@qq.com> Date: Sat, 11 Mar 2023 22:50:47 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B9=A6=E7=B1=8D=E5=AF=BC=E5=85=A5=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E7=AD=9B=E9=80=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ui/book/import/BaseImportBookActivity.kt | 21 +++++++++++++++++++ .../book/import/local/ImportBookActivity.kt | 1 - .../book/import/local/ImportBookViewModel.kt | 11 ++++++++++ .../book/import/remote/RemoteBookActivity.kt | 1 - .../book/import/remote/RemoteBookViewModel.kt | 10 +++++++++ .../main/res/layout/activity_import_book.xml | 6 ++++-- app/src/main/res/menu/book_remote.xml | 6 ------ app/src/main/res/menu/import_book.xml | 6 ------ 8 files changed, 46 insertions(+), 16 deletions(-) diff --git a/app/src/main/java/io/legado/app/ui/book/import/BaseImportBookActivity.kt b/app/src/main/java/io/legado/app/ui/book/import/BaseImportBookActivity.kt index e871fcef3..ee12dfb06 100644 --- a/app/src/main/java/io/legado/app/ui/book/import/BaseImportBookActivity.kt +++ b/app/src/main/java/io/legado/app/ui/book/import/BaseImportBookActivity.kt @@ -2,6 +2,7 @@ package io.legado.app.ui.book.import import androidx.lifecycle.ViewModel import androidx.viewbinding.ViewBinding +import androidx.appcompat.widget.SearchView import io.legado.app.R import io.legado.app.base.VMBaseActivity import io.legado.app.help.config.AppConfig @@ -13,6 +14,9 @@ import kotlin.coroutines.suspendCoroutine abstract class BaseImportBookActivity : VMBaseActivity() { private var localBookTreeSelectListener: ((Boolean) -> Unit)? = null + private val searchView: SearchView by lazy { + binding.titleBar.findViewById(R.id.search_view) + } private val localBookTreeSelect = registerForActivityResult(HandleFileContract()) { it.uri?.let { treeUri -> @@ -51,5 +55,22 @@ abstract class BaseImportBookActivity : VMBase } } + private fun initSearchView() { + searchView.applyTint(primaryTextColor) + searchView.onActionViewExpanded() + searchView.isSubmitButtonEnabled = true + searchView.queryHint = getString(R.string.screen_find) + searchView.clearFocus() + searchView.setOnQueryTextListener(object : SearchView.OnQueryTextListener { + override fun onQueryTextSubmit(query: String?): Boolean { + return false + } + + override fun onQueryTextChange(newText: String?): Boolean { + viewModel.updateCallBackFlow(newText) + return false + } + }) + } } \ No newline at end of file diff --git a/app/src/main/java/io/legado/app/ui/book/import/local/ImportBookActivity.kt b/app/src/main/java/io/legado/app/ui/book/import/local/ImportBookActivity.kt index 840031907..627108a70 100644 --- a/app/src/main/java/io/legado/app/ui/book/import/local/ImportBookActivity.kt +++ b/app/src/main/java/io/legado/app/ui/book/import/local/ImportBookActivity.kt @@ -52,7 +52,6 @@ class ImportBookActivity : BaseImportBookActivity) @@ -170,6 +179,8 @@ class ImportBookViewModel(application: Application) : BaseViewModel(application) fun addItems(fileDocs: List) fun clear() + + fun screen(key: String?) } diff --git a/app/src/main/java/io/legado/app/ui/book/import/remote/RemoteBookActivity.kt b/app/src/main/java/io/legado/app/ui/book/import/remote/RemoteBookActivity.kt index 8f22849c9..e4620d17d 100644 --- a/app/src/main/java/io/legado/app/ui/book/import/remote/RemoteBookActivity.kt +++ b/app/src/main/java/io/legado/app/ui/book/import/remote/RemoteBookActivity.kt @@ -37,7 +37,6 @@ class RemoteBookActivity : BaseImportBookActivity) @@ -144,6 +152,8 @@ class RemoteBookViewModel(application: Application) : BaseViewModel(application) fun addItems(remoteFiles: List) fun clear() + + fun screen(key: String?) } } \ No newline at end of file diff --git a/app/src/main/res/layout/activity_import_book.xml b/app/src/main/res/layout/activity_import_book.xml index 55dbebf8a..6ed061b16 100644 --- a/app/src/main/res/layout/activity_import_book.xml +++ b/app/src/main/res/layout/activity_import_book.xml @@ -9,8 +9,10 @@ android:id="@+id/titleBar" android:layout_width="match_parent" android:layout_height="wrap_content" - app:layout_constraintTop_toTopOf="parent" /> - + app:layout_constraintTop_toTopOf="parent" + app:attachToActivity="false" + app:contentLayout="@layout/view_search" /> + - - - -