获取数组中对象的x,y坐标

时间:2012-02-22 04:30:50

标签: objective-c ios

我有一个UIImageView对象,我正试图获得x坐标。我使用下面的代码执行此操作

endingPoint.x = myObject.center.x;

现在,我怎么能这样做,如果我在一个数组中有相同的UIImageView,我试图循环并得到每个对象的x坐标,如下所示?

endingPoint.x = [posArray objectAtIndex:i].center.x;

我知道这是一个新手问题,但我只是从iOS开始。

4 个答案:

答案 0 :(得分:1)

这显然可以在for循环中完成。 您可以在Objective-C快速枚举循环或标准for循环中执行此操作。

快速枚举循环看起来像这样。

for (UIImageView *image in posArray) {
    endingPoint.x = image.center.x;
    // Do everything else you want to do with the UIImageView inside the array.
}

答案 1 :(得分:1)

循环内部应该有效:

endingPoint.x = [[posArray objectAtIndex:i] center].x;

答案 2 :(得分:1)

endingPoint.x = [[posArray objectAtIndex:i] center].x;

endingPoint.x = ((UIImageView *)[posArray objectAtIndex:i]).center.x;

答案 3 :(得分:1)

你非常接近。 objectAtIndex:但是,返回 id 类型的对象(指向任何东西的通用指针),因此您不能在其上调用 .center (property)

您必须使用括号符号向其发送消息,如下所示:

endingPoint.x = [[posArray objectAtIndex:i] center].x;

首先将值转换为(UIImageView *):

endingPoint.x = ((UIImageView *)[posArray objectAtIndex:i]).center.x;