过渡与动画
用 transition 为样式变化添加动画。View 不会为每一帧重建。
#悬停过渡
button()
.bg(Color::rgb8(37, 99, 235))
.transition(Transition::colors(Duration::from_millis(160)))
.hover(|style| style.bg(Color::rgb8(29, 78, 216)))
.child("Hover")#状态驱动的动画
根据 View 状态改变样式字段并调用 invalidate。动画进行时保持该元素挂载。
#时长与帧率
Transition::new 接受 Duration。用 with_easing 设置缓动,也可以用 max_fps 限制帧率。
#支持的属性
背景、边框颜色和宽度、圆角、文本颜色、盒阴影、透明度和变换会插值。宽度、高度和内边距不会。
#挂载与减少动态效果
组件支持时,在退出过渡期间保持浮层挂载。过渡会遵循系统的「减少动态效果」设置。
#动态图像
img 会播放你传入路径的 GIF 和 WebP 文件。不需要定时器。
