Android Rect对象中top,left,right和bottom的含义是什么

时间:2014-03-23 09:58:04

标签: android android-canvas android-view android-shape

我有一个Android项目,我应该让Apples掉线。苹果涂在Rect中。所以我创建了一个改变Rect位置并重新绘制的函数。这是我的职责:

private void updateApplesPosition() {
    for(Rect rect:fallingDownFruitsList)
        rect.set(rect.left, rect.top +10, rect.right, rect.bottom +10);
}

我有一个问题:苹果不会摔倒但是从右到左。为了让苹果落下,我改变了代码:

private void updateApplesPosition() {
    for(Rect rect:fallingDownFruitsList)
        rect.set(rect.left+10, rect.top, rect.right+10, rect.bottom);
}

3 个答案:

答案 0 :(得分:151)

此图片会详细解释您:

enter image description here

  

矩形左侧的X坐标

     

顶部矩形顶部的Y坐标

     

矩形右侧的X坐标

     

bottom 矩形底部的Y坐标

enter image description here

答案 1 :(得分:1)

From the docs

<强>参数

  

矩形左侧的X坐标

     

顶部矩形顶部的Y坐标

     

矩形右侧的X坐标

     

bottom 矩形底部的Y坐标

答案 2 :(得分:0)

添加关键信息。

文档说:

请注意,右坐标和底坐标是唯一的。

因此,如果矩形是位置10,10的单个像素

left = 10:矩形左侧的X坐标

top = 10:矩形顶部的Y坐标= 10

right = 11:矩形右侧的X坐标加一个

bottom = 11:矩形底部的Y坐标加一个

请注意,右坐标和底坐标是唯一的。

getWidth方法就是这样声明的

public final int width(){返回右-左; }

此处将按预期返回11-10 = 1。

https://developer.android.com/reference/android/graphics/Rect