相关疑难解决方法(0)

你如何在libgdx阶段对Actors进行排序?

我在LibGdx Stage对象中排序Actors时遇到问题.舞台渲染后,图像按照添加顺序渲染.Stage使用Array来保存Actors.我已经尝试设置每个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;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

然后当我想做我做的实际比较时:

Collections.sort(Stage.getActors(), new ActorComparator());
Run Code Online (Sandbox Code Playgroud)

它给我以下错误,不会编译:

The method sort(List<T>, Comparator<? super T>) in the type Collections 
is not applicable for the arguments (Array<Actor>, ActorComparator)
Run Code Online (Sandbox Code Playgroud)

我不知道我做错了什么.谁可以给我解释一下这个?

java libgdx

8
推荐指数
2
解决办法
9732
查看次数

标签 统计

java ×1

libgdx ×1