LibGDX - 使用android libs

时间:2012-05-29 20:12:47

标签: java android libgdx

我有三个项目

  1. 游戏 - Java项目
  2. GameAndroid - Android
  3. GameDesktop - Java Project
  4. 我想访问 android.graphics.Color ,但我在我的Game项目中是java,所以我不能这样做。当我尝试访问 Java.awt.Color 时,我会得到 java.lang.NoClassDefFoundError

    有没有办法访问这些库中的任何一个?

    例如我想使用这种方法:

    Color.getHSBColor();
    

1 个答案:

答案 0 :(得分:4)

我通常建议改用com.badlogic.gdx.graphics.Color

它具有与平台无关的优点 - 但请注意类似物之间的实现差异。

例如,比较Android的实现(AWT以相同的方式工作):

public static int argb(int alpha, int red, int green, int blue) {
    return (alpha << 24) | (red << 16) | (green << 8) | blue;
}

和libgdx实现:

public static int toIntBits (int r, int g, int b, int a) {
     return (a << 24) | (b << 16) | (g << 8) | r;
}

如您所见,编码中的顺序是不同的。这是source code  供参考。

如果你正在寻找诸如HSB-> RGB转换之类的东西,这可以“手动”实现。例如,请参阅this answer - 但请记住使用libgdx实现从RGB组件生成实际的int!