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

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

要回复问题请先登录注册