我试图制作Android蛇游戏,我希望网格在屏幕宽度(纵向)上延伸。
我使用drawable存储我的png
,当我添加行grid.setBounds(0,0,screenWidth,screenWidth)
时,我的手机首先会显示一个白色的屏幕,但是一旦我最小化并重新打开我的应用程序,它会按预期工作。 / p>
如果我将标准数字作为参数放入,该应用程序也可按预期工作。这是我在android 7上的nexus 6P。当我在旧设备上模拟它时它可以工作,但在较新的设备上模拟,我看到同样的问题。我得到的屏幕宽度如下:
WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
Point size = new Point();
display.getSize(size);
screenWidth = size.x;
screenHeight = size.y;
scale = screenWidth/1024.0;
如果有人能提供帮助,那将非常感激。
答案 0 :(得分:0)
尝试以onWindowFocusChnaged
活动方式获取屏幕尺寸。
@Override
public void onWindowFocusChanged(boolean hasFocus)
{
super.onWindowFocusChanged(hasFocus);
WindowManager wm = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
Point size = new Point();
display.getSize(size);
screenWidth = size.x;
screenHeight = size.y;
scale = screenWidth/1024.0;
}