Objective c 从NSMutableArray更改为NSMutableDictionary时访问对象
在我的一个类中,我已从Objective c 从NSMutableArray更改为NSMutableDictionary时访问对象,objective-c,nsmutablearray,nsdictionary,Objective C,Nsmutablearray,Nsdictionary,在我的一个类中,我已从NSMutableArray更改为NSMutableDictionary 在我访问其他类中的对象之前,如下所示: tmpDeadline = [_taskDays[i] deadline]; //deadline is a object of another class [_taskDays[datePlace]addDatedTask:d]; //addDatedTask is a method in another class 并访问如下方法: tmpDea
NSMutableArray
更改为NSMutableDictionary
在我访问其他类中的对象之前,如下所示:
tmpDeadline = [_taskDays[i] deadline]; //deadline is a object of another class
[_taskDays[datePlace]addDatedTask:d]; //addDatedTask is a method in another class
并访问如下方法:
tmpDeadline = [_taskDays[i] deadline]; //deadline is a object of another class
[_taskDays[datePlace]addDatedTask:d]; //addDatedTask is a method in another class
但是现在我不能再这样做了,因为我遇到了很多我真的不知道如何处理的错误。我所知道的是,我希望使用另一个类的“截止日期”作为键,使用该类的实例作为对象 下面是代码(我给出了注释错误的代码: 为此:
[_taskDays setObject:d forKey:tmpLIUTaskDay.deadline];
taskDays
是字典,而您在使用它时,就好像它是中的数组一样\u taskDays[i]
tmpDeadline = [_taskDays[i] deadline]; //*ERROR*
这里也有:
[_taskDays addObject:tmpLIUTaskDay]; //*ERROR*
要从字典中提取或添加新的键值对,应执行以下操作:
tmpDeadline = [_taskDays[@"taskDay"] deadline];
及
为什么要将它从数组更改为字典?因为使用日期可以更容易地从日历访问任务:),所以字典的键是每月的日期?我不认为这会让事情变得容易。您是否考虑过在同一天执行多个任务?是的,这就是我使用的[_taskDays[datePlace]addDatedTask:d];因为我不知道如何更改它,所以我也会得到一个错误。我将尝试这些方法,但我如何使它在以下情况下工作:[[u taskDays[datePlace]addDatedTask:d];在这里,我需要从另一个类访问一个方法。我阅读了你的其他注释,你不能有相同的键两次。您将失去第一个值。您必须了解KVP/字典。还有你的另一个问题…
如何从另一个类访问方法
。创建类的实例并使用它。如果您想要相同的值集,则需要一个singleton类。键用于月中的每一天(NSDate),每天可以有多个任务。你能给我举个例子,说明如何使用dictionary从另一个类访问方法吗?
[_taskDays addObject:addObject:tmpLIUTaskDay forKey:@"taskDay"];