Использование animateFloatAsState не работает с продолжительностью. ⇐ Android

Форум для тех, кто программирует под Android
Anonymous
Использование animateFloatAsState не работает с продолжительностью.

Сообщение Anonymous »

Я пытаюсь создать анимацию, чтобы насыщенность анимировалась в течение 1000 мс. Однако в приведенном ниже коде это происходит мгновенно.
Это фрагмент кода

Код: Выделить всё

val saturation by animateFloatAsState(
targetValue = if (isSelected) 1f else 0f,
animationSpec = tween(durationMillis = 1_000)
)

var rememberSaturation = remember(saturation) {
ColorMatrix().apply {
this.setToSaturation(if (isSelected) 1f else 0f)
}
}
Я использую это следующим образом:

Код: Выделить всё

 Image(
modifier = Modifier.size(24.dp),
painter = painterResource(currencyCode.flag),
contentDescription = null,
colorFilter = ColorFilter.colorMatrix(rememberSaturation)
)
Я пытаюсь анимировать флаг, когда пользователь нажимает на него.
Изображение


Подробнее здесь: https://stackoverflow.com/questions/786 ... a-duration

Вернуться в «Android»