修复偶先的进入阅读界面时书籍不加载的问题

This commit is contained in:
HapeLee
2025-09-11 02:02:28 +08:00
parent e99157ca8c
commit 9c09d0b18e
@@ -253,7 +253,7 @@ class ReadBookActivity : BaseReadBookActivity(),
@SuppressLint("ClickableViewAccessibility")
override fun onCreate(savedInstanceState: Bundle?) {
if (AppConfig.sharedElementEnterTransitionEnable) {
if (AppConfig.sharedElementEnterTransitionEnable && savedInstanceState == null) {
val transform = MaterialContainerTransform().apply {
addTarget(binding.rootView)
@@ -267,28 +267,12 @@ class ReadBookActivity : BaseReadBookActivity(),
Transition.TransitionListener {
override fun onTransitionStart(transition: Transition) {}
override fun onTransitionEnd(transition: Transition) {
lifecycleScope.launch(Dispatchers.Default) {
viewModel.initReadBookConfig(intent)
viewModel.initData(intent)
withContext(Main) {
binding.readView.initAfterTransition()
justInitData = true
}
}
loadBook()
transition.removeListener(this)
}
override fun onTransitionCancel(transition: Transition) {
lifecycleScope.launch(Dispatchers.Default) {
viewModel.initReadBookConfig(intent)
viewModel.initData(intent)
withContext(Main) {
binding.readView.initAfterTransition()
justInitData = true
}
}
loadBook()
transition.removeListener(this)
}
@@ -296,6 +280,8 @@ class ReadBookActivity : BaseReadBookActivity(),
override fun onTransitionResume(transition: Transition) {}
})
}
} else {
loadBook()
}
window.sharedElementReturnTransition =
MaterialSharedAxis(MaterialSharedAxis.X, true).apply {
@@ -339,21 +325,6 @@ class ReadBookActivity : BaseReadBookActivity(),
}
}
override fun onPostCreate(savedInstanceState: Bundle?) {
super.onPostCreate(savedInstanceState)
if (!AppConfig.delayBookLoadEnable || !AppConfig.sharedElementEnterTransitionEnable) {
lifecycleScope.launch(Dispatchers.Default) {
viewModel.initReadBookConfig(intent)
viewModel.initData(intent)
withContext(Main) {
binding.readView.initAfterTransition()
justInitData = true
}
}
}
}
override fun onNewIntent(intent: Intent) {
super.onNewIntent(intent)
viewModel.initData(intent)
@@ -465,6 +436,17 @@ class ReadBookActivity : BaseReadBookActivity(),
return super.onMenuOpened(featureId, menu)
}
private fun loadBook() {
lifecycleScope.launch(Dispatchers.Default) {
viewModel.initReadBookConfig(intent)
viewModel.initData(intent)
withContext(Dispatchers.Main) {
binding.readView.initAfterTransition()
justInitData = true
}
}
}
/**
* 更新菜单
*/