iPhone と iPad の両方のストーリーボードに 1 つのクラス (DetailCell) を使用しようとしています。次のコードがあります。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString * cellIdentifier = @"DetailCell";
DetailCell * detailCell = [self.tableView dequeueReusableCellWithIdentifier:cellIdentifier];
if (detailCell == nil) {
detailCell = [[DetailCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"DetailCell"];
}
//cell customization here...
return detailCell;
}
iPad では完全に機能しますが、iPhone では機能しません。すべての識別子、接続、およびクラスが適切に設定されています。また、両方のボードのセルを消去して、新しいセルを作成しようとしました。私が実際に持っているもの:
iPad の場合:
両端キューでセルを取得しているため、必要に応じて if に入らず、セルを返します。
iPhone の場合:
deque は nil を返し、if に行くと DetailCell を返しますが、カスタマイズは機能しません。(すべてのアウトレットは、値を設定する前後でゼロです) この動作の理由は何ですか?
PS iOS5 と iOS6 の両方で