カスタムで非常にシンプルな UITableViewCell があります。Ios 6 の新しいテクニックを使用して、テーブル ビューを初期化したいだけです。つまり、クラスを登録し、識別子を使用してセルを deque した後です。だから私はUITableViewControllerを持っています。テーブルビュー内にはプロトタイプセルが1つあります。これがそのイメージです。
最初は、Table Viewコントローラー内のviewDidLoadメソッドにクラスを登録するのを忘れていましたが、正常に機能していました。これがコードです。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
CustomCell *cell = [tableView dequeueReusableCellWithIdentifier:@"customCellIdentifier" forIndexPath:indexPath];
return cell;
}
しかし、この場合
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
セルの初期化プロセス中には呼び出されません。
そして、登録クラス機能をviewdidload内に配置した後。ここにコードがあります
- (void)viewDidLoad
{
[super viewDidLoad];
[self.tableView registerClass:[CustomCell class] forCellReuseIdentifier:@"customCellIdentifier"];
}
その後、 - (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
呼び出しが開始されますが、この場合、デバッグしようとするとセルが完全に空になり、initwithstyle メソッド内ではすべてのアウトレットが nil になります。どうしたの?私は何を間違っていますか?