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 1066c181d..68cf61036 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 @@ -310,6 +310,16 @@ class MainActivity : VMBaseActivity(), } } + /** + * 如果重启太快fragment不会重建,这里更新一下书架的排序 + */ + override fun recreate() { + (fragmentMap[getFragmentId(0)] as? BaseBookshelfFragment)?.run { + upSort() + } + super.recreate() + } + override fun observeLiveBus() { viewModel.onUpBooksLiveData.observe(this) { onUpBooksBadgeView.setBadgeCount(it) 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 85e346ea5..051d8613c 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 @@ -116,6 +116,8 @@ abstract class BaseBookshelfFragment(layoutId: Int) : VMBaseFragment) + abstract fun upSort() + @SuppressLint("InflateParams") fun addBookByUrl() { alert(titleResource = R.string.add_book_url) { @@ -166,16 +168,12 @@ abstract class BaseBookshelfFragment(layoutId: Int) : VMBaseFragment