Andengine livewall paper:在所有设备上都支持尺寸为1280 * 800的纹理图集吗?

时间:2013-06-14 11:26:38

标签: andengine textures

我正在使用Andengine开发动态壁纸,我知道在某些设备中,纹理图集允许的最大尺寸为1024 * 1024.I和我喜欢创建大小为1280 * 800的背景图像。 想知道这会支持所有设备吗?

感谢所有建议和想法

1 个答案:

答案 0 :(得分:2)

没有。你不能这样做。

另外,你不应该。一个巨大的动态壁纸将使一个设备运行缓慢,如果它吃掉所有的记忆。您应该选择适合该设备的背景图像大小。

看看android如何处理/ resources文件夹中的图像选择。它为不同的显示器使用不同大小的图像:

http://developer.android.com/guide/practices/screens_support.html

这是您在所有移动开发中应遵循的明智的最佳做法:尽可能使用最少的内存。尽可能合理地将您的内容定制到设备功能。

在移动开发中,“一刀切”实际上是一刀切。

这是一个可能适合您的策略 在创建引擎时获取显示宽度和高度,然后根据该结果选择合适大小的背景。

public Engine onLoadEngine() {
    final Display display = getWindowManager().getDefaultDisplay();
    int cameraWidth = display.getWidth();
    int cameraHeight = display.getHeight();

    String deb = String.format("Screen: %d / %d",cameraWidth,cameraHeight);
    Log.d("Debug:", deb);

    this.mCamera = new Camera(0, 0, cameraWidth,cameraHeight);
    return new Engine(new EngineOptions(true, ScreenOrientation.LANDSCAPE, 
        new RatioResolutionPolicy(cameraWidth, cameraHeight), this.mCamera));
}