有什么方法可以将属性添加到从[array objectAtIndex:]获得的对象中?

时间:2011-08-10 09:29:22

标签: objective-c arrays properties nsarray

如果我的问题不清楚,我会提前道歉。

实际上,我想使用for循环将标记值设置为对象数组。

for   (int j = 0; j < [array count]; j++) {

[array objectAtIndex:j].tag = j;

} 

我能做些什么吗?

2 个答案:

答案 0 :(得分:1)

另一种方法:

int counter = 0;
for (UIView* view in array)
  view.tag = counter++;

答案 1 :(得分:0)

假设array中的所有对象都是UIView的子类:

for (int j = 0; j < [array count]; j++] {
    UIView *tmpView = (UIView *)[array objectAtIndex:j];
    tmpView.tag = j;
}

objectAtIndex返回指向对象的指针,而不是对象的新副本。因此,通过返回指针更改的任何内容都将反映在原始数组对象中。