android屏幕坐标如何工作?

Yas*_*han 149 android coordinate-systems android-animation

我正在使用Android Animation,我发现Android坐标系非常混乱,所以我在这里问一下这个问题,关于坐标在Android中是如何工作的.我正在关注此图像以将一个视图移动到另一个视图,但它似乎无法正常工作:

图片

AAn*_*kit 278

在此输入图像描述

此图像显示两个方向(横向/纵向)

要获得MaxX和MaxY,请继续阅读.

对于Android设备屏幕坐标,下面的概念将起作用.

Display mdisp = getWindowManager().getDefaultDisplay();
Point mdispSize = new Point();
mdisp.getSize(mdispSize);
int maxX = mdispSize.x; 
int maxY = mdispSize.y;
Run Code Online (Sandbox Code Playgroud)

编辑: - ****支持早于13的android api级别的设备.可以使用下面的代码.

    Display mdisp = getWindowManager().getDefaultDisplay();
    int maxX= mdisp.getWidth();
    int maxY= mdisp.getHeight();
Run Code Online (Sandbox Code Playgroud)

(x,y): -

1)(0,0)是左上角.

2) (maxX,0)是右上角

3)(0,maxY)是左下角

4)(maxX,maxY)是右下角

这里maxX和maxY是屏幕最大高度和宽度(以像素为单位),我们在上面给出的代码中检索了它们.


小智 18

对于Android API等级13,您需要使用此:

Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int maxX = size.x; 
int maxY = size.y;
Run Code Online (Sandbox Code Playgroud)

然后(0,0)是左上角,(maxX,maxY)是屏幕的右下角.

屏幕尺寸的'getWidth()'自API 13以来已弃用

此外,getwidth()getHeight()android.So中android.view.View 类的方法,当你的java类扩展View类时,没有windowManager开销.

          int maxX=getwidht();
          int maxY=getHeight();
Run Code Online (Sandbox Code Playgroud)

就如此容易.


Gk *_*mon 6

这张照片希望能消除大家的困惑,这是从那里收集的。

安卓屏幕坐标