Objective c 初始化UITableViewController的常用方法
我正在使用以下命令初始化我的表Objective c 初始化UITableViewController的常用方法,objective-c,Objective C,我正在使用以下命令初始化我的表 # AppDelegate.m NSArray *textToPutInTable = @[@"Row One", @"Row More Than One", @"Row Hello!"]; ItemsViewController *itemsViewController = [[ItemsViewController alloc] initWithTextToPutInTable:textToPutInTable]; self.win
# AppDelegate.m
NSArray *textToPutInTable = @[@"Row One", @"Row More Than One", @"Row Hello!"];
ItemsViewController *itemsViewController =
[[ItemsViewController alloc] initWithTextToPutInTable:textToPutInTable];
self.window.rootViewController = itemsViewController;
# ItemsViewController.m
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"UITableViewCell" forIndexPath:indexPath];
cell.textLabel.text = self.textToPutInTable[indexPath.row];
return cell;
}
有更好的初始化表的方法吗?或者上述模式在这样做时很常见?AppDelegate应该做的唯一一件事是启动初始视图控制器并响应委托方法。不要将您的模型放入AppDelegate。我将在ItemsViewController的init方法中定义textToPutInTable 编辑: 我会这样做:
@interface ItemsViewController ()
@property (nonatomic, strong) NSArray *textToPutInTable;
@end
@implementation
- (instancetype)init {
if ((self = [super init])) {
_textToPutInTable = @[@"Row One", @"Row More Than One", @"Row Hello!"];
}
return self;
}
在AppDelegate中:
self.window.rootViewController = [[ItemsViewController alloc] init];
AppDelegate应该做的唯一一件事是启动初始视图控制器并响应委托方法。不要将您的模型放入AppDelegate。我想在ItemsViewController的init方法中定义textToPutInTable。我明白了-你能在回答中告诉我这一点吗?你的意思是用比数组更好的方式来表示表视图后面的数据吗?通常不会。数组的初始化时间和方式取决于数据源、时间等。谢谢,那么我应该如何进行上述初始化,将所有代码放在ItemsViewController中?