From fcc887cb2557fff1c53850655aa4ba49ef2f2227 Mon Sep 17 00:00:00 2001 From: kunfei Date: Sat, 1 Jul 2023 20:23:24 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/io/legado/app/ui/main/MainActivity.kt | 4 +--- .../main/java/io/legado/app/ui/main/MainFragmentInterface.kt | 2 +- .../io/legado/app/ui/main/bookshelf/BaseBookshelfFragment.kt | 2 ++ .../legado/app/ui/main/bookshelf/style1/BookshelfFragment1.kt | 2 -- .../legado/app/ui/main/bookshelf/style2/BookshelfFragment2.kt | 2 -- .../java/io/legado/app/ui/main/explore/ExploreFragment.kt | 2 +- app/src/main/java/io/legado/app/ui/main/my/MyFragment.kt | 2 +- app/src/main/java/io/legado/app/ui/main/rss/RssFragment.kt | 2 +- 8 files changed, 7 insertions(+), 11 deletions(-) diff --git a/app/src/main/java/io/legado/app/ui/main/MainActivity.kt b/app/src/main/java/io/legado/app/ui/main/MainActivity.kt index 44c407636..1066c181d 100644 --- a/app/src/main/java/io/legado/app/ui/main/MainActivity.kt +++ b/app/src/main/java/io/legado/app/ui/main/MainActivity.kt @@ -385,9 +385,7 @@ class MainActivity : VMBaseActivity(), override fun getItemPosition(any: Any): Int { val position = (any as MainFragmentInterface).position - if (position < 0) { - return POSITION_NONE - } + ?: return POSITION_NONE val fragmentId = getId(position) if ((fragmentId == idBookshelf1 && any is BookshelfFragment1) || (fragmentId == idBookshelf2 && any is BookshelfFragment2) diff --git a/app/src/main/java/io/legado/app/ui/main/MainFragmentInterface.kt b/app/src/main/java/io/legado/app/ui/main/MainFragmentInterface.kt index d1cf5d13f..6b11b08fc 100644 --- a/app/src/main/java/io/legado/app/ui/main/MainFragmentInterface.kt +++ b/app/src/main/java/io/legado/app/ui/main/MainFragmentInterface.kt @@ -2,6 +2,6 @@ package io.legado.app.ui.main interface MainFragmentInterface { - val position: Int + val position: Int? } \ No newline at end of file diff --git a/app/src/main/java/io/legado/app/ui/main/bookshelf/BaseBookshelfFragment.kt b/app/src/main/java/io/legado/app/ui/main/bookshelf/BaseBookshelfFragment.kt index 78ff2b316..85e346ea5 100644 --- a/app/src/main/java/io/legado/app/ui/main/bookshelf/BaseBookshelfFragment.kt +++ b/app/src/main/java/io/legado/app/ui/main/bookshelf/BaseBookshelfFragment.kt @@ -33,6 +33,8 @@ import io.legado.app.utils.* abstract class BaseBookshelfFragment(layoutId: Int) : VMBaseFragment(layoutId), MainFragmentInterface { + override val position: Int? get() = arguments?.getInt("position") + val activityViewModel by activityViewModels() override val viewModel by viewModels() diff --git a/app/src/main/java/io/legado/app/ui/main/bookshelf/style1/BookshelfFragment1.kt b/app/src/main/java/io/legado/app/ui/main/bookshelf/style1/BookshelfFragment1.kt index 4ddb949ab..bf093b4f4 100644 --- a/app/src/main/java/io/legado/app/ui/main/bookshelf/style1/BookshelfFragment1.kt +++ b/app/src/main/java/io/legado/app/ui/main/bookshelf/style1/BookshelfFragment1.kt @@ -40,8 +40,6 @@ class BookshelfFragment1() : BaseBookshelfFragment(R.layout.fragment_bookshelf1) arguments = bundle } - override val position: Int get() = arguments?.getInt("position") ?: -1 - private val binding by viewBinding(FragmentBookshelf1Binding::bind) private val adapter by lazy { TabFragmentPageAdapter(childFragmentManager) } private val tabLayout: TabLayout by lazy { diff --git a/app/src/main/java/io/legado/app/ui/main/bookshelf/style2/BookshelfFragment2.kt b/app/src/main/java/io/legado/app/ui/main/bookshelf/style2/BookshelfFragment2.kt index ede596d0e..8881713de 100644 --- a/app/src/main/java/io/legado/app/ui/main/bookshelf/style2/BookshelfFragment2.kt +++ b/app/src/main/java/io/legado/app/ui/main/bookshelf/style2/BookshelfFragment2.kt @@ -52,8 +52,6 @@ class BookshelfFragment2() : BaseBookshelfFragment(R.layout.fragment_bookshelf2) arguments = bundle } - override val position: Int get() = arguments?.getInt("position") ?: -1 - private val binding by viewBinding(FragmentBookshelf2Binding::bind) private val bookshelfLayout by lazy { getPrefInt(PreferKey.bookshelfLayout) diff --git a/app/src/main/java/io/legado/app/ui/main/explore/ExploreFragment.kt b/app/src/main/java/io/legado/app/ui/main/explore/ExploreFragment.kt index 04382a213..9ed90d32b 100644 --- a/app/src/main/java/io/legado/app/ui/main/explore/ExploreFragment.kt +++ b/app/src/main/java/io/legado/app/ui/main/explore/ExploreFragment.kt @@ -54,7 +54,7 @@ class ExploreFragment() : VMBaseFragment(R.layout.fragment_exp arguments = bundle } - override val position: Int get() = arguments?.getInt("position") ?: -1 + override val position: Int? get() = arguments?.getInt("position") override val viewModel by viewModels() private val binding by viewBinding(FragmentExploreBinding::bind) diff --git a/app/src/main/java/io/legado/app/ui/main/my/MyFragment.kt b/app/src/main/java/io/legado/app/ui/main/my/MyFragment.kt index 01bf7a37a..527d701cd 100644 --- a/app/src/main/java/io/legado/app/ui/main/my/MyFragment.kt +++ b/app/src/main/java/io/legado/app/ui/main/my/MyFragment.kt @@ -52,7 +52,7 @@ class MyFragment() : BaseFragment(R.layout.fragment_my_config), MainFragmentInte arguments = bundle } - override val position: Int get() = arguments?.getInt("position") ?: -1 + override val position: Int? get() = arguments?.getInt("position") private val binding by viewBinding(FragmentMyConfigBinding::bind) diff --git a/app/src/main/java/io/legado/app/ui/main/rss/RssFragment.kt b/app/src/main/java/io/legado/app/ui/main/rss/RssFragment.kt index af33c8149..d661617c5 100644 --- a/app/src/main/java/io/legado/app/ui/main/rss/RssFragment.kt +++ b/app/src/main/java/io/legado/app/ui/main/rss/RssFragment.kt @@ -52,7 +52,7 @@ class RssFragment() : VMBaseFragment(R.layout.fragment_rss), arguments = bundle } - override val position: Int get() = arguments?.getInt("position") ?: -1 + override val position: Int? get() = arguments?.getInt("position") private val binding by viewBinding(FragmentRssBinding::bind) override val viewModel by viewModels()