目前,我已经编辑了一个将练习对象添加到 NSMutableArray 的委托函数。但是,我不想添加重复的对象,相反,如果对象已经在数组中,我想简单地访问那个特定的对象。
这是我的代码:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
NSString *str = cell.textLabel.text; // Retrieves the string of the selected cell.
Exercise *exerciseView = [[Exercise alloc] initWithExerciseName:str];
WorkoutManager *workoutManager = [WorkoutManager sharedInstance];
if (![[workoutManager exercises] containsObject:exerciseView]) {
[[workoutManager exercises] insertObject:exerciseView atIndex:0];
[self presentModalViewController:exerciseView animated:YES];
NSLog(@"%@", [workoutManager exercises]);
}
else {
[self presentModalViewController:exerciseView animated:YES];
NSLog(@"%@", [workoutManager exercises]);
}
}
我认为这会起作用,但是,当我运行我的代码并 NSLogged 我的数组时,它表明当我单击同一个单元格时,会创建两个单独的对象。有什么帮助吗?