と呼ばれていませんが、次のとおりです。コードが示すようにいただきました私のコードで間違って、データソースのメソッドが私のコード
- (instancetype)init {
self = [super initWithNibName:nil bundle:nil];
if (self) {
_tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 20, self.view.frame.size.width, self.view.frame.size.height - 20)
style:UITableViewStylePlain];
for (int i = 0; i < 10; i++) {
[[LHItemSharedStore sharedStore] createItem];
}
}
return self;
}
- (instancetype)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
return [self init];
}
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[self.tableView reloadData];
}
- (void)viewDidLoad {
[super viewDidLoad];
self.tableView.delegate = self;
self.tableView.dataSource = self;
[self.view addSubview:self.tableView];
[self.tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:@"UITableViewCell"];
}
-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
return 1;
}
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return [[[LHItemSharedStore sharedStore] items]count];
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"UITableViewCell" forIndexPath:indexPath];
cell.textLabel.text = @"test";
return cell;
}
、データソースメソッドが呼び出されません。私はviewWillAppearで [self.view addSubView:self.tableView];
を入れたときには、この方法は、あなたのテーブルので、私は[self.view addSubView:self.tableView];
メソッドが呼び出されないとはどういう意味ですか?あなたのコードで判断すると、デリゲートメソッドを実装することさえできませんでした。 –
私はメソッドを実装し、それを超えてはいけません。あなたの助言のおかげで、私は後者を追加します。 – stucs
なぜViewControllerにinitメソッドがありますか? nibfileがnilに設定されているので、あなたは何も初期化していません –