Ehs*_*msz 6 android android-animation android-jetpack-compose
我想用一次性start delay的Jetpack Compose.
我infiniteRepeatable()用过tween():
val value by rememberInfiniteTransition().animateFloat(
initialValue = 0f,
targetValue = 1f,
animationSpec = infiniteRepeatable(
animation = tween(
durationMillis = 700,
delayMillis = 200
)
)
)
Run Code Online (Sandbox Code Playgroud)
在这种情况下,delayMillis将重复:
*delay* 0..1, *delay* 0..1, *delay* 0..1 , *delay* 0..1 ...
Run Code Online (Sandbox Code Playgroud)
但在ValueAnimator其中start delay是一次性延迟:
*delay* 0..1, *delay* 0..1, *delay* 0..1 , *delay* 0..1 ...
Run Code Online (Sandbox Code Playgroud)
*delay* 0..1, 0..1, 0..1, 0..1, 0..1, 0..1, 0..1 ...
Run Code Online (Sandbox Code Playgroud)
InfiniteRepeatable有没有办法为in设置一次性启动延迟Jetpack Compose?
谢谢
目前尚不支持 ( 1.0.0-beta07) 个非重复延迟。
您可以将动画更改为以下内容:
val animatedFloat = remember { Animatable(0f) }
LaunchedEffect(animatedFloat) {
delay(200) // to avoid repeated delays
animatedFloat.animateTo(
targetValue = 1f, animationSpec = infiniteRepeatable(
animation = tween(700, easing = FastOutSlowInEasing),
repeatMode = RepeatMode.Reverse
)
)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7217 次 |
| 最近记录: |