diff --git a/app/src/main/java/io/legado/app/ui/book/read/EffectiveReplacesDialog.kt b/app/src/main/java/io/legado/app/ui/book/read/EffectiveReplacesDialog.kt new file mode 100644 index 000000000..504867c1b --- /dev/null +++ b/app/src/main/java/io/legado/app/ui/book/read/EffectiveReplacesDialog.kt @@ -0,0 +1,67 @@ +package io.legado.app.ui.book.read + +import android.content.Context +import android.os.Bundle +import android.view.View +import android.view.ViewGroup +import androidx.recyclerview.widget.LinearLayoutManager +import io.legado.app.R +import io.legado.app.base.BaseDialogFragment +import io.legado.app.base.adapter.ItemViewHolder +import io.legado.app.base.adapter.RecyclerAdapter +import io.legado.app.data.entities.ReplaceRule +import io.legado.app.databinding.DialogRecyclerViewBinding +import io.legado.app.databinding.ItemTextBinding +import io.legado.app.lib.theme.primaryColor +import io.legado.app.model.ReadBook +import io.legado.app.utils.setLayout +import io.legado.app.utils.viewbindingdelegate.viewBinding + +class EffectiveReplacesDialog : BaseDialogFragment(R.layout.dialog_recycler_view) { + + private val binding by viewBinding(DialogRecyclerViewBinding::bind) + private val adapter by lazy { ReplaceAdapter(requireContext()) } + + override fun onStart() { + super.onStart() + setLayout(0.9f, ViewGroup.LayoutParams.WRAP_CONTENT) + } + + override fun onFragmentCreated(view: View, savedInstanceState: Bundle?) { + binding.run { + toolBar.setBackgroundColor(primaryColor) + toolBar.setTitle(R.string.effective_replaces) + recyclerView.layoutManager = LinearLayoutManager(requireContext()) + recyclerView.adapter = adapter + } + ReadBook.curTextChapter?.effectiveReplaceRules?.let { + adapter.setItems(it) + } + } + + + private inner class ReplaceAdapter(context: Context) : + RecyclerAdapter(context) { + + override fun getViewBinding(parent: ViewGroup): ItemTextBinding { + return ItemTextBinding.inflate(inflater, parent, false) + } + + override fun registerListener(holder: ItemViewHolder, binding: ItemTextBinding) { + binding.root.setOnClickListener { + + } + } + + override fun convert( + holder: ItemViewHolder, + binding: ItemTextBinding, + item: ReplaceRule, + payloads: MutableList + ) { + binding.textView.text = item.name + } + + } + +} \ No newline at end of file diff --git a/app/src/main/java/io/legado/app/ui/book/read/ReadBookActivity.kt b/app/src/main/java/io/legado/app/ui/book/read/ReadBookActivity.kt index d1f764ac2..962c7e39b 100644 --- a/app/src/main/java/io/legado/app/ui/book/read/ReadBookActivity.kt +++ b/app/src/main/java/io/legado/app/ui/book/read/ReadBookActivity.kt @@ -441,6 +441,8 @@ class ReadBookActivity : BaseReadBookActivity(), viewModel.reverseRemoveSameTitle() } + R.id.menu_effective_replaces -> showDialogFragment() + R.id.menu_help -> showReadMenuHelp() } return super.onCompatOptionsItemSelected(item) diff --git a/app/src/main/res/menu/book_read.xml b/app/src/main/res/menu/book_read.xml index de3e87644..79356f2d0 100644 --- a/app/src/main/res/menu/book_read.xml +++ b/app/src/main/res/menu/book_read.xml @@ -108,6 +108,11 @@ android:title="@string/update_toc" app:showAsAction="never" /> + + 页至 Analyzed Comprehensive + 起效的替换 diff --git a/app/src/main/res/values-ja-rJP/strings.xml b/app/src/main/res/values-ja-rJP/strings.xml index 372f5d4a6..d58ad55c2 100644 --- a/app/src/main/res/values-ja-rJP/strings.xml +++ b/app/src/main/res/values-ja-rJP/strings.xml @@ -1124,4 +1124,5 @@ 页至 Analyzed Comprehensive + 起效的替换 diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index b7b916135..12970fb40 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -1124,4 +1124,5 @@ 页至 Analyzed Comprehensive + 起效的替换 diff --git a/app/src/main/res/values-vi/strings.xml b/app/src/main/res/values-vi/strings.xml index 2bf577c9a..b50ac7a74 100644 --- a/app/src/main/res/values-vi/strings.xml +++ b/app/src/main/res/values-vi/strings.xml @@ -1120,4 +1120,5 @@ Còn Trang tới Analyzed Comprehensive + 起效的替换 \ No newline at end of file diff --git a/app/src/main/res/values-zh-rHK/strings.xml b/app/src/main/res/values-zh-rHK/strings.xml index 2566d68de..02bdf495a 100644 --- a/app/src/main/res/values-zh-rHK/strings.xml +++ b/app/src/main/res/values-zh-rHK/strings.xml @@ -1121,4 +1121,5 @@ 页至 解析示例 綜合排序 + 起效的替换 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 092e38b82..bc9cce6b9 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -1123,4 +1123,5 @@ 页至 解析示例 綜合排序 + 起效的替换 diff --git a/app/src/main/res/values-zh/strings.xml b/app/src/main/res/values-zh/strings.xml index dc7635e09..9229b6b21 100644 --- a/app/src/main/res/values-zh/strings.xml +++ b/app/src/main/res/values-zh/strings.xml @@ -1123,4 +1123,5 @@ 页至 解析示例 综合排序 + 起效的替换 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 090404976..884f809b6 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1124,4 +1124,5 @@ 页至 Analyzed Comprehensive + 起效的替换