From 5fbdcf54d8a0b7800e26b4508fb33bd1357614ef Mon Sep 17 00:00:00 2001
From: HapeLee <1321903405@qq.com>
Date: Wed, 12 Nov 2025 20:48:29 +0800
Subject: [PATCH] =?UTF-8?q?=E6=AD=A3=E6=96=87=E6=90=9C=E7=B4=A2=E7=99=BE?=
=?UTF-8?q?=E5=88=86=E6=AF=94=20#272?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../io/legado/app/ui/book/read/SearchMenu.kt | 12 ++++++
app/src/main/res/layout/view_search_menu.xml | 41 +++++++++++++++----
2 files changed, 46 insertions(+), 7 deletions(-)
diff --git a/app/src/main/java/io/legado/app/ui/book/read/SearchMenu.kt b/app/src/main/java/io/legado/app/ui/book/read/SearchMenu.kt
index 0b01978f7..02d6c236e 100644
--- a/app/src/main/java/io/legado/app/ui/book/read/SearchMenu.kt
+++ b/app/src/main/java/io/legado/app/ui/book/read/SearchMenu.kt
@@ -108,6 +108,7 @@ class SearchMenu @JvmOverloads constructor(
"${context.getString(R.string.search_content_size)}: ${searchResultList.size}"
binding.tvCurrentChapter.text = "当前章节: ${it.title}"
}
+ updateSearchProgress()
}
fun updateSearchResultIndex(updateIndex: Int) {
@@ -117,6 +118,17 @@ class SearchMenu @JvmOverloads constructor(
updateIndex >= searchResultList.size -> searchResultList.size - 1
else -> updateIndex
}
+ updateSearchProgress()
+ }
+
+ private fun updateSearchProgress() {
+ val total = searchResultList.size
+ if (total == 0) {
+ binding.tvSearchProgress.text = "0%"
+ } else {
+ val progress = ((currentSearchResultIndex + 1) * 100 / total)
+ binding.tvSearchProgress.text = "$progress%"
+ }
}
private fun bindEvent() = binding.run {
diff --git a/app/src/main/res/layout/view_search_menu.xml b/app/src/main/res/layout/view_search_menu.xml
index fb1dfd97a..cfaf4aa86 100644
--- a/app/src/main/res/layout/view_search_menu.xml
+++ b/app/src/main/res/layout/view_search_menu.xml
@@ -63,14 +63,41 @@
app:cardBackgroundColor="?attr/colorSecondaryContainer"
android:layout_marginHorizontal="16dp">
-
+ android:layout_height="wrap_content"
+ android:orientation="horizontal">
+
+
+
+
+
+
+