只是把它放在那里,我相信这些设备有 2 个主要比例(5:3 和 4:3)。大多数其他人比 4:3 更接近 5:3(所以 5:3 应该是默认值)。
我想支持最好的图形,而不必经历所有的屏幕尺寸。所以我采用了这两个比率。
现在我做了这样的设置:
定义
String fileFolderForRatio = "";
int CAMERA_WIDTH = 1280;
int CAMERA_HEIGHT = 768;
@Override
public EngineOptions onCreateEngineOptions() {
instance = this;
// getting the device's screen size
Point screenSize = getScreenSizeByRatio();
CAMERA_WIDTH = screenSize.x;
CAMERA_HEIGHT = screenSize.y;
mCamera = new Camera(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT);
final EngineOptions engineOptions = new EngineOptions(true, ScreenOrientation.LANDSCAPE_SENSOR,
new RatioResolutionPolicy(CAMERA_WIDTH, CAMERA_HEIGHT), mCamera);
engineOptions.getAudioOptions().setNeedsSound(true);
engineOptions.getAudioOptions().setNeedsMusic(true);
return engineOptions;
}
和功能(注意检查宽度和高度,有时 AndEngine 会反过来检测)
public Point getScreenSizeByRatio()
{
final Display display = getWindowManager().getDefaultDisplay();
double sw = display.getWidth();
double sh = display.getHeight();
double ratio = sw / sh;
if (sw < sh) ratio = sh/sw;
Point screenPoints = new Point();
if (ratio > 1.3 && ratio < 1.4)
{
fileFolderForRatio = "1024x768";
screenPoints.x = 1024;
screenPoints.y = 768;
} else
{
fileFolderForRatio = "1280x768";
screenPoints.x = 1280;
screenPoints.y = 768;
}
Debug.e("RATIO", fileFolderForRatio);
return screenPoints;
}
将图形(针对该屏幕尺寸进行了优化)放在 1024x768 文件夹和 1280x768 文件夹中。
这样你就有了半静态的屏幕尺寸。AndEngine 将为您调整其余部分的大小。
(请不要对精灵的屏幕定位进行检查,因为 2 的比例不一样。但是来自 Ios 开发人员,这并不难(iPad 和 iPhone)
希望能帮助到你