UI组件之Group
当Group旋转或缩放时,它的孩子们正常绘制,并且Batch变换后正确的旋转或缩放。
绘制Group前,Batch flush使得变换可以设置。有很多Group时这将可能成为性能瓶颈。如果在一组演员不旋转或缩放,然后settransform(false)可用于Group。当这样做,每个孩子的位置基于Group的位置进行绘制,使孩子们出现在正确的位置,即使没有转换。
Group继承自Actor,是2D场景绘制的节点,包含了很多其他演员;
每个演员都有一个 z-order 等于他们插入到Group中的顺序,后插入的会绘制在先插入的上面。
触摸事件优先分发到顶层的演员上面。
常用方法说明:
把actor作为子元素加入到组中。
void addActorAt(int index, Actor actor)
把actor作为子元素加入到组中。
固定在某个层级上面。如果index超过了子数组大小,actor会插入到最上层。
setTransform(Boolean tansform)
默认true,代表Group中子元素有旋转,缩放操作。
Group在绘制前会先进行applyTransform然后resetTransform两次操作都会进行Batch的flush().这里会有性能瓶颈问题。如果子元素完全没有旋转缩放操作,可以设置setTransform(false).
继承自Group的类有
WidgetGroup
。
时间: 2024-11-02 10:21:48