0

我试图创建一个小应用程序,跟踪拒绝统计信息。 像消耗,平均速度,最后加油日期..等添加和访问数组中的对象(目标c)

并输入这些细节后,将它们添加到按日期排序的列表。

Looking something like this!

我能够添加新条目左视图控制器上的列表。但我不知道如何创建一个对象并将其放入一个数组中,然后再访问它。

如果我添加了新的对象添加到列表,我希望能够点击它,并更改日期或食用或任何东西。

我甚至不知道我是否需要一个Array,或和字典。

如果您需要一些我已经写过的代码,请告诉我。

回答

0

使用数组可能是最好的,所以公开一个NSArray(不可变数组),但在类的实现中,您应该使用NSMutableArray(可变数组),以便您可以添加/删除项目但不想类的用户能够做到这一点:

.h文件:

@interface WhatNot : UITableViewController 

@property (readonly) NSArray *listOfThings; 

... 

@end 

.m文件:

@implementation WhatNot() 
{ 
    NSMutableArray *_listOfThings; 
} 
@end 

@implementation WhatNot 

... 

// Override the getter method 
- (NSArray *)listOfThings { 
    return _listOfThings; 
} 

如果您希望类的用户能够将对象添加到数组,然后为他们提供一个方法,这样做,并且该方法中,你可以将对象添加到阵列,并安排更新的tableView:

- (void)addThing:(Thing *)thing { 
    [_listOfThings addObject:thing]; 

    NSIndexPath *indexPath = [NSIndexPath indexPathWithIndex:[_listOfThings count] - 1]; 
    [self.tableView beginUpdates]; 
    [self.tableView insertRowAtIndexPaths:@[indexPath] 
         withRowAnimation:UITableViewRowAnimationTop]; 
    [self.tableView endUpdates]; 
}