从CGPoints数组设置按钮框架(仅x和y位置)

时间:2013-08-16 05:38:49

标签: iphone ios objective-c

1)我有一个长度为10的数组并命名为'pointArrar'。这个数组在其每个索引上都包含CGPoints 2)我还有10个按钮 现在我想从CGPoints数组中设置Buttons框架(只有x& y位置。)我只想知道如何从数组中包含的CGPoint设置按钮x和y位置。

2 个答案:

答案 0 :(得分:1)

非常合乎逻辑。

让我们说你的阵列就像

NSArray * pointArrar = [NSArray arrayWithObjects:
                     [NSValue valueWithCGPoint:CGPointMake(5.5, 6.6)],
                     [NSValue valueWithCGPoint:CGPointMake(7.7, 8.8)],
                     nil];

然后要添加到各种按钮,您需要简单地将所有点放入循环中,如

for(int i=0; i<[pointArrar count] ; i++)
{
    NSValue *val = [pointArrar objectAtIndex:i];
    CGPoint p = [val CGPointValue];
    [Button setCenter:p];
}

此处所有积分都已添加到您的按钮中。希望这适合你:)

答案 1 :(得分:0)

据我所知,你想使用NSArray并且它不存储任何结构。所以你可以NSValue包装你的点并将它们添加到数组中。这是一个例子..

NSArray *points = [NSArray array];
// wrap your point using NSValue
NSValue *pointValue = [NSValue valueWithCGPoint:CGPointMake(x,y)];

[points addObject:pointValue];
/// ... add points

// get your point back...
CGPoint point = [[points objectAtIndex:index] CGPointValue];

button.frame = CGRectMake(point.x, point.y, button.frame.size.width, button.frame.size.height;