我需要制作一个动画,它会根据坐标的移动百分比来改变图标的状态,我做到了但是我的界面变慢了,如果我从中删除图标那么一切都很好,我写得很糟糕但是这是我唯一能做的选择
@Composable
fun RecommendationIcon(
bookCardController: BookCardController,
modifier: Modifier,
size: Dp,
color: Color,
icon: Int,
alpha: Float,
description: String
) {
Box(modifier = modifier) {
Box(contentAlignment = Alignment.Center) {
Box {
Image(
painter = painterResource(id = icon),
contentDescription = description,
modifier = Modifier
.size(size),
colorFilter = ColorFilter.tint(bookCardController.baseIconColor)
)
}
Box {
Image(
painter = painterResource(id = icon),
contentDescription = description,
modifier = Modifier
.size(size + 20.dp)
.alpha(alpha / 3),
colorFilter = ColorFilter.tint(color)
)
}
Box {
Image(
painter = painterResource(
id = icon
),
contentDescription = description,
modifier = Modifier
.size(size)
.alpha(alpha),
colorFilter = ColorFilter.tint(color)
)
}
}
}
}
bookCardController 负责改变状态,当卡片移动时改变状态。