我使用andengine开发游戏。除平板电脑屏幕尺寸(1280x800)外,其工作正常(自动调整图像大小)适用于所有屏幕分辨率。我用过这段代码
displayMetrics = new DisplayMetrics();
this.getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
//Display display = getWindowManager().getDefaultDisplay();
CAMERA_WIDTH=displayMetrics.widthPixels;
CAMERA_HEIGHT=displayMetrics.heightPixels;
this.mCamera = new Camera(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT);
final Engine engine = new Engine(new EngineOptions(true, ScreenOrientation.LANDSCAPE, new FillResolutionPolicy(), this.mCamera).setNeedsSound(true));
return engine;
对于我使用的游戏徽标和菜单屏幕 private static int CAMERA_WIDTH = 720; private static int CAMERA_HEIGHT = 480; 我在清单文件中更改后,它在平板电脑上工作正常(自动调整图像大小)
<supports-screens android:largeScreens="true"/>
但是在游戏内部并没有调整大小。如何解决这个问题?
答案 0 :(得分:1)
您需要将此标记为supports-screens
:
<supports-screens android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true"/>
您可以阅读更多here。
顺便说一下,根据屏幕改变相机尺寸不是一个好主意。请记住,相机大小是场景的矩形大小,实际显示在设备屏幕上。如果不同的设备有不同的相机尺寸,并且意味着每个设备将以不同的方式看到游戏,而且不应该这样做(这会很奇怪,可能不公平......等等)
您可以设置相机宽度&amp;高度为常数,然后使用RatioResolutionPolicy
尽可能多地使用屏幕。