我在LibGdx Stage对象中对演员进行排序遇到了困难。当Stage被渲染时,图像按添加顺序呈现。Stage使用一个数组来保存演员。我已经尝试设置每个Actor的ZIndex,但它仍然没有排序。然后我尝试创建这样一个比较器对象:
public class ActorComparator implements Comparator < Actor > {
@Override
public int compare(Actor arg0, Actor arg1) {
if (arg0.getZIndex() < arg1.getZIndex()) {
return -1;
} else if (arg0.getZIndex() == arg1.getZIndex()) {
return 0;
} else {
return 1;
}
}
}
然后当我想进行实际比较时,我执行了以下操作:
Collections.sort(Stage.getActors(), new ActorComparator());
它给了我以下错误,无法编译:
The method sort(List<T>, Comparator<? super T>) in the type Collections
is not applicable for the arguments (Array<Actor>, ActorComparator)
我不知道我做错了什么。有人能给我解释一下吗?