fix: 修复预测性返回手势失效和结束闪屏
- 移除 enabled 条件中的 backProgress == 0f,该条件在手势开始时 会立即禁用 handler 导致系统直接执行返回 - 将 handleBack 结尾的 snapTo(0f) 改为 animateTo(0f, tween(100)) 避免进度瞬间跳变引起的闪屏
This commit is contained in:
parent
911b8f2293
commit
4219527428
@ -95,7 +95,7 @@ fun App() {
|
||||
Screen.Licenses -> Screen.About
|
||||
else -> currentScreen
|
||||
}
|
||||
backAnimProgress.snapTo(0f)
|
||||
backAnimProgress.animateTo(0f, tween(100, easing = FastOutSlowInEasing))
|
||||
}
|
||||
}
|
||||
|
||||
@ -186,7 +186,7 @@ fun App() {
|
||||
// 预测性返回手势
|
||||
if (currentScreen != Screen.Main) {
|
||||
PredictiveBackHandler(
|
||||
enabled = backProgress == 0f && !backAnimProgress.isRunning && forwardTarget == null,
|
||||
enabled = !backAnimProgress.isRunning && forwardTarget == null,
|
||||
onProgress = { backProgress = it },
|
||||
onBack = handleBack,
|
||||
onCancel = handleCancel
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user