为已添加到 LayoutManager 中的杂乱 actor 设置动画的正确方法是什么?

What is the proper way to animate clutter actors that have been added in a LayoutManager?

我有一个包含许多 Clutter.Actor (and one GtkClutter.Actor 嵌入 TreeView) 的阶段,它们被添加到布局管理器(比方说 GridLayout)。

现在我想用动画移动它们,使用 translation_xtranslation_y 并调整它们的大小 width

推荐的方法是什么?

按规则放置演员的布局会不会和演员的新位置冲突?

我应该切断与布局的联系(通过取消 layoutmanager 属性)吗?

所有 ClutterLayoutManager 实现都遵循 actor 的缓动状态,因此如果您将缓动状态的持续时间设置为非零值,分配中的所有更改都将隐式设置动画。您可以在 Clutter 本身附带的 layout manager example 中看到效果。

具有非零持续时间的缓动状态还允许您转换 widthheight 属性,以及转换属性,例如 translation-xtranslation-y.

但请务必注意,转换属性不会影响布局管理;如果你改变一个演员的比例、深度、旋转或平移,你在演员被分配后这样做。您可以使用这些知识来实现​​转换。