Art*_*yle 0 arrays json objective-c ios
以下代码
NSMutableArray *textLabels = [[NSMutableArray alloc] initWithObjects:cell.textLabel1.text, cell.textLabel2.text, cell.textLabel3.text, cell.textLabel4.text, cell.textLabel5.text, nil];
for (int i=0; i<json.count; ++i)
{
textLabels[i] = [NSString stringWithFormat:@"#%@",[json[i] valueForKey:@"text"]]];
}
Run Code Online (Sandbox Code Playgroud)
写入textLabels数组正确的字符串值,但模拟器上的标签不会更改.为什么?
看起来您认为向标签询问其文本会返回对标签值的可更新引用,但事实并非如此.返回的字符串是一个不可变对象,您的代码只是将这些值替换为其他不可变值.
要更新标签,您应该在数组中保留对标签本身的引用,然后您可以索引到该数组并设置每个标签的文本.您不需要将任何文本存储在数组中.
您可以手动将标签添加到数组中,也可以IBOutletCollection根据UI定义添加标签.
| 归档时间: |
|
| 查看次数: |
45 次 |
| 最近记录: |