0
UITableViewCell
でUILabel
のラッピングを行うと奇妙な問題が発生しています。私は自動レイアウトを使用していますが、これはiOS> 6でうまく動作しますが、UITableViewCell
の中のUILabel
はiOS 6の最初の読み込み時にラッピングされません。セルをタップして詳細ビューを表示してから戻ると、UILabelは期待される。自動レイアウト - UITableViewCell内のUILabelがiOS 6の初期読み込み時にラップしていません
self.productNameLabel = [[UILabel alloc] init];
self.productNameLabel.translatesAutoresizingMaskIntoConstraints = NO;
self.productNameLabel.backgroundColor = [UIColor clearColor];
self.productNameLabel.textAlignment = NSTextAlignmentLeft;
self.productNameLabel.font = kFontDynamicSubHead;
self.productNameLabel.lineBreakMode = NSLineBreakByWordWrapping;
self.productNameLabel.numberOfLines = 2;
[self.contentView addSubview:self.productNameLabel];
は、その後、私はラベルを配置するために、いくつかの制約を追加します。ここでは
は、私は、セルにラベルを追加してい方法です。 Height/Width制約は設定しません。
最後に、私のセルのlayoutSubviews
に私のラベルにpreferredMaxLayoutWidth
を設定しました。
- (void)layoutSubviews {
[super layoutSubviews];
self.productNameLabel.preferredMaxLayoutWidth = self.productNameLabel.bounds.size.width;
}
誰かがこれに直面した場合や回避策を知っている場合は、お手数ですがお勧めします。