我已经扩展了 View 并覆盖了 onDraw 和 onSizechanged,所以我可以在屏幕的完整高度和宽度之后在屏幕上绘图。但是当我在手机上尝试时,imgs 的位置与我定义的位置略有不同。另外我在我的代码中定义了实际值(以 px 为单位),我认为我不能使用 dip 至少我不知道....
当我不使用布局并在代码上执行此操作时,我该怎么做才能使其在许多屏幕上看起来都一样?
让图像在不同屏幕上感觉相同,您必须首先确定设备的高度和宽度,并根据它编写一些方法,将您的图像设置在不同屏幕上您想要的位置。
要获取屏幕的高度和宽度,您必须在活动开始时编写此方法:
float ht,wt;
DisplayMetrics displaymetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
ht = displaymetrics.heightPixels;
wt = displaymetrics.widthPixels;