我是Android新手并且有一个问题是重新输入触摸输入(使用OnTouchUp / Down / Move)。 Android使用什么坐标系?我得到的值范围从0,0(左上角)到320,530(右下角)。我选择的模拟器的分辨率为480x800 ......所以这没有任何意义......
你能给我一个暗示吗? 谢谢!答案 0 :(得分:3)
这是因为您没有指定您的应用程序可以处理具有不同密度的屏幕。这就是Android自动扩展所有内容的原因,但应用程序可以使用虚拟屏幕,而不是真实屏幕。
要让事情看起来像这样,您必须在AndroidManifest.xml中指定android:anyDensity="true"
,或将minSdkVersion
或targetSdkVersion
设置为“4”或更高。后者将自动使Android假设android:anyDensity
设置为“true”。
您可以在文章Supporting Multiple Screens中了解有关与屏幕相关的问题的更多信息。
答案 1 :(得分:0)
引用链接页面:
与密度无关的像素(dp)
您应该使用的虚拟像素单元 在定义UI布局时,要表达 布局尺寸或位置 密度无关的方式。
与密度无关的像素是 相当于一个物理像素 160 dpi屏幕,这是基线 系统假设的密度 “中等”密度屏幕。在运行时, 系统透明地处理任何 必要时缩放dp单位 根据实际的密度 屏幕在使用中。 dp的转换 屏幕像素的单位很简单:px = dp *(dpi / 160)。例如,在a 240 dpi屏幕,1 dp等于1.5 物理像素。你应该经常使用 定义你的dp单位 应用程序的UI,以确保正确 在屏幕上显示您的UI 不同的密度。