我正在创建一个使用复选标记创建单元格的方法。我有问题!
在didSelectRowAtIndexPath
:
NSString *keyOfMainDic = [self.arr objectAtIndex:indexPath.row];
NSMutableArray *temDic = [rilievi objectForKey:keyOfMainDic];
UITableViewCell * thisCell = [tableView cellForRowAtIndexPath: indexPath];
NSMutableDictionary * dict = [[NSMutableDictionary alloc] init];
NSMutableArray *selArray = [[NSMutableArray alloc]init];
if (thisCell.accessoryType == UITableViewCellAccessoryNone)
{
thisCell.accessoryType = UITableViewCellAccessoryCheckmark;
[sendRelief setObject: temDic forKey: keyOfMainDic];
[selArray addObject: sendRelief];
}
else
{
thisCell.accessoryType = UITableViewCellAccessoryNone;
[selArray removeObject:sendRelief];
}
NSMutableArray
NSMutableArray
,因为通过keyOfMainDic键,在另一个词典中我有一个可变数量的值基本上,这种方法的工作方式如下:当我点击UITableView
中的单元格时,我提取了上一个字典键(对应于UITableView
中显示的元素。)使用此键,我提取了该键的实际值,因此在前两个变量中,我将提取我感兴趣的单个键及其值。
此时我所做的是:我创建一个新词典(dict)和一个新的NSMutableArray
(selArray)。
如果是thisCell.accessoryType == UITableViewCellAccessoryNone
,那么我在该单元格上打了一个复选标记,因为我选择了它,同时使用 keyOfMainDic 键添加一个新对象( temDic ) (前两个变量)到字典。然后我将第一个字典添加到NSMutableArray
并重复操作UITableView
中我关注的单元格。
这项工作。
问题是做相反的事情。当我点击带有复选标记的单元格时,我删除了复选标记并尝试从selArray中删除该字典,因为我不想再考虑该单元格了。我这样做[selArray removeObject: sendRelief];
但它不起作用,我不知道如何通过从UITableView
中选择一个单元来删除字典。
selArray我创建它只是因为我需要一个紧凑的结构,我必须发送给另一个控制器。
我希望自己解释一下。
谢谢!