android屏幕坐标是如何工作的?
我正在使用安卓android屏幕坐标是如何工作的?,android,android-animation,coordinate-systems,Android,Android Animation,Coordinate Systems,我正在使用安卓动画,我发现安卓坐标系非常混乱,所以我在这里问这个关于坐标在安卓中如何工作的问题。我按照这张图片将一个视图移动到另一个视图,但它似乎不起作用: 此图像显示两种方向(横向/纵向) 要获得MaxX和MaxY,请继续阅读 对于Android设备屏幕坐标,以下概念将起作用 Display mdisp = getWindowManager().getDefaultDisplay(); Point mdispSize = new Point(); mdisp.getSize(mdispSiz
动画,我发现安卓坐标系非常混乱,所以我在这里问这个关于坐标在安卓中如何工作的问题。我按照这张图片将一个视图移动到另一个视图,但它似乎不起作用:
此图像显示两种方向(横向/纵向)
要获得MaxX和MaxY,请继续阅读
对于Android设备屏幕坐标,以下概念将起作用
Display mdisp = getWindowManager().getDefaultDisplay();
Point mdispSize = new Point();
mdisp.getSize(mdispSize);
int maxX = mdispSize.x;
int maxY = mdispSize.y;
编辑:-****适用于支持android api级别早于13的设备。可以使用以下代码。
Display mdisp = getWindowManager().getDefaultDisplay();
int maxX= mdisp.getWidth();
int maxY= mdisp.getHeight();
(x,y):-
1) (0,0)位于左上角
2) (maxX,0)位于右上角
3) (0,maxY)位于左下角
4) (maxX,maxY)位于右下角
这里的maxX和maxY是屏幕的最大高度和宽度(以像素为单位),我们在上面给定的代码中检索到了这一点。对于Android API级别13,您需要使用:
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int maxX = size.x;
int maxY = size.y;
然后(0,0)是屏幕的左上角,(maxX,maxY)是屏幕的右下角
自API 13以来,屏幕大小的“getWidth()”已被弃用
此外,还有一些方法
所以当java类扩展View类时,就不会有windowManager开销
int maxX=getwidht();
int maxY=getHeight();
就这么简单。这张照片将消除每个人的困惑,希望这是从中收集的
如果我们使用布局_width=“1”layout\u height=“1”
查看是否意味着左上角是(0,0),右下角是(1,1)?这不是意味着视图的宽度=2,高度=2吗?矛盾。@AAnkit您能确认一下吗,这对屏幕方向(纵向和横向)都有效,屏幕方向的改变是否影响(0,0)->左上角。(maxX,0)->右上角(0,maxY)->左下角(maxX,maxY)->右下角非常感谢您的图片。它真的救了我的命。事实上,你画的是正确的,只是逆时针旋转了90度。