使用数组可能是最好的,所以公开一个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];
}