From 22862f60dcd4a8c7ef538e49731b273e933bc111 Mon Sep 17 00:00:00 2001 From: Horis <8674809+821938089@users.noreply.github.com> Date: Fri, 10 Jan 2025 18:40:33 +0800 Subject: [PATCH] Fix page animation switch --- app/src/main/java/io/legado/app/model/ReadBook.kt | 10 +++++----- .../io/legado/app/ui/book/read/ReadBookActivity.kt | 14 ++++++++++---- .../app/ui/book/read/config/ReadStyleDialog.kt | 2 +- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/io/legado/app/model/ReadBook.kt b/app/src/main/java/io/legado/app/model/ReadBook.kt index 42a7e9ccd..c778fd242 100644 --- a/app/src/main/java/io/legado/app/model/ReadBook.kt +++ b/app/src/main/java/io/legado/app/model/ReadBook.kt @@ -170,11 +170,11 @@ object ReadBook : CoroutineScope by MainScope() { appDb.bookSourceDao.getBookSource(book.origin)?.let { bookSource = it if (book.getImageStyle().isNullOrBlank()) { - book.setImageStyle(it.getContentRule().imageStyle) - } - if (it.getContentRule().imageStyle == Book.imgStyleSingle) { - book.setImageStyle(it.getContentRule().imageStyle) - book.setPageAnim(0) + val imageStyle = it.getContentRule().imageStyle + book.setImageStyle(imageStyle) + if (imageStyle.equals(Book.imgStyleSingle, true)) { + book.setPageAnim(0) + } } } ?: let { bookSource = null 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 6a19fa2c4..0ee492cbe 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 @@ -565,14 +565,20 @@ class ReadBookActivity : BaseReadBookActivity(), R.id.menu_set_charset -> showCharsetConfig() R.id.menu_image_style -> { val imgStyles = - arrayListOf(Book.imgStyleDefault, Book.imgStyleFull, Book.imgStyleText, Book.imgStyleSingle) + arrayListOf( + Book.imgStyleDefault, Book.imgStyleFull, Book.imgStyleText, + Book.imgStyleSingle + ) selector( R.string.image_style, imgStyles ) { _, index -> - ReadBook.book?.setImageStyle(imgStyles[index]) - ReadBook.book?.setPageAnim(0) // 切换图片样式single后,自动切换为覆盖 - binding.readView.upPageAnim() + val imageStyle = imgStyles[index] + ReadBook.book?.setImageStyle(imageStyle) + if (imageStyle == Book.imgStyleSingle) { + ReadBook.book?.setPageAnim(0) // 切换图片样式single后,自动切换为覆盖 + binding.readView.upPageAnim() + } ReadBook.loadContent(false) } } diff --git a/app/src/main/java/io/legado/app/ui/book/read/config/ReadStyleDialog.kt b/app/src/main/java/io/legado/app/ui/book/read/config/ReadStyleDialog.kt index e04dcd165..2ad6dd497 100644 --- a/app/src/main/java/io/legado/app/ui/book/read/config/ReadStyleDialog.kt +++ b/app/src/main/java/io/legado/app/ui/book/read/config/ReadStyleDialog.kt @@ -134,7 +134,7 @@ class ReadStyleDialog : BaseDialogFragment(R.layout.dialog_read_book_style), TipConfigDialog().show(childFragmentManager, "tipConfigDialog") } rgPageAnim.setOnCheckedChangeListener { _, checkedId -> - ReadBook.book?.setPageAnim(null) + ReadBook.book?.setPageAnim(-1) ReadBookConfig.pageAnim = binding.rgPageAnim.getIndexById(checkedId) callBack?.upPageAnim() ReadBook.loadContent(false)