将对象添加到 NSMutableArray,即使它被选中
Add Object to NSMutableArray even it is check marked
我尝试将 cell.textlabel.text
添加到 NSMutableArray,即使它已被选中。我使用以下代码执行此操作:
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
if (cell.accessoryType == UITableViewCellAccessoryCheckmark) {
cell.accessoryType = UITableViewCellAccessoryNone;
}
else{
cell.accessoryType = UITableViewCellAccessoryCheckmark;
self.selectedDays = [[NSMutableArray alloc] init];
[self.selectedDays addObject:cell.textLabel.text];
NSLog(@"%@", self.selectedDays);
}
}
但不是添加,而是替换。
2015-06-28 xx:xx:xx xxxx - xxxx[xxx:xxx] (
Monday
)
2015-06-28 xx:xx:xx xxxx - xxxx[xxx:xxx] (
Tuesday
)
2015-06-28 xx:xx:xx xxxx - xxxx[xxx:xxx] (
Wednesday
)
每次点击一个单元格,你就在做
self.selectedDays = [[NSMutableArray alloc] init];
这是丢弃旧数组并创建一个新数组。然后你给它加一件事。
将该行代码移至 viewDidLoad
,这样您只需创建一次数组。
你真的应该使用你的数据模型而不是从单元格中获取文本...
我尝试将 cell.textlabel.text
添加到 NSMutableArray,即使它已被选中。我使用以下代码执行此操作:
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
if (cell.accessoryType == UITableViewCellAccessoryCheckmark) {
cell.accessoryType = UITableViewCellAccessoryNone;
}
else{
cell.accessoryType = UITableViewCellAccessoryCheckmark;
self.selectedDays = [[NSMutableArray alloc] init];
[self.selectedDays addObject:cell.textLabel.text];
NSLog(@"%@", self.selectedDays);
}
}
但不是添加,而是替换。
2015-06-28 xx:xx:xx xxxx - xxxx[xxx:xxx] (
Monday
)
2015-06-28 xx:xx:xx xxxx - xxxx[xxx:xxx] (
Tuesday
)
2015-06-28 xx:xx:xx xxxx - xxxx[xxx:xxx] (
Wednesday
)
每次点击一个单元格,你就在做
self.selectedDays = [[NSMutableArray alloc] init];
这是丢弃旧数组并创建一个新数组。然后你给它加一件事。
将该行代码移至 viewDidLoad
,这样您只需创建一次数组。
你真的应该使用你的数据模型而不是从单元格中获取文本...