我想在txt1
的文本字段arr2
中保存我的新编辑文本,然后使用替换方法将新文本替换为arry1
中的旧元素。但它不起作用。
arr2 = [[NSMutableArray alloc]init];
[arr2 addObject:txt1.text];
NSInteger j=0;
[arry1 replaceObjectAtIndex:j withObject:arr2];
[arry1 insertObject:arr2 atIndex:j];
txt1.text=[arry1 objectAtIndex:j];
答案 0 :(得分:5)
您的代码存在一些问题:
NSInteger j = 0;
[arry1 replaceObjectAtIndex:j withObject:arr2];
[arry1 insertObject:arr2 atIndex:j];
替换意味着删除索引处的对象,并在一个步骤中将新对象插入索引。你做的只是添加两倍相同的东西。您可以通过打印出数组(NSLog(@"%@",arry1);
)来测试它。
下一个问题:
txt1.text=[arry1 objectAtIndex:j];
您正在 arry1 对象中存储NSArray
。但是NSTextField
期望字符串是text
属性。您已将其存储在 arr2 中,以便您可以使用以下行访问它:
txt1.text = [[arry1 objectAtIndex:j] objectAtIndex:0];
始终牢记您正在使用的类型和结构!