自定义视图在不同的Android屏幕上显示问题

时间:2011-01-28 10:55:02

标签: android view screens

我已经扩展了View和覆盖onDraw和onSizechanged,所以我可以在我拥有屏幕的完整高度和宽度后在屏幕上绘图。但是当我在手机上尝试时,imgs略微处于与我定义的位置不同的位置。我也在我的代码中定义了实际值(以px为单位),我想我至少不能使用dip我不知道....

如果我不使用Layouts并且我在代码上执行此操作,我可以做些什么来使它在许多屏幕上看起来相同?

1 个答案:

答案 0 :(得分:0)

让img感觉相同。屏幕,你必须首先确定设备的高度和宽度,并根据它你应该写一些方法,将你想要的地方设置你的差异屏幕。


获取屏幕的高度和宽度,您可以在活动开始时编写此方法:


float ht,wt;
    DisplayMetrics displaymetrics = new DisplayMetrics();
            getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
            ht = displaymetrics.heightPixels;
            wt = displaymetrics.widthPixels;