2012-05-05 8 views
0

UITableViewCell内にUILabelがあり、高さを調整しようとしていましたが、高さがセルの高さよりも大きい場合、その下の次のセルにオーバーフローします。どうすればこれを避けることができますか?私は私のcontentViewにこれを追加しています。UITableViewCellのUILabelはオーバーフローします

[self.contentView addSubview:self.commentsText_]; 

答えて

3

オーバーフローを非表示にしたい場合。

self.contentView.clipsToBounds = YES; 

またはあなたがラベルの高さを計算しても、セルの高さを変更することができ、次のコードを使用して

- (void)setNeedsLayout 
{ 
    [super setNeedsLayout]; 
    self.commentsText_.frame = .... // layout your label 
} 
3

- (CGFloat)tableView:(UITableView *)tableView 
heightForRowAtIndexPath:(NSIndexPath *)indexPath { 

    UILabel *yourlabel;// use your memober class UILabel. I am declare here temporary. 
    CGSize s = [yourlabel.text sizeWithFont:[UIFont systemFontOfSize:15] // enter your text font size and cell-width 
          constrainedToSize:CGSizeMake(yourcellwidth, MAXFLOAT) // - 40 For cell padding 
           lineBreakMode:UILineBreakModeWordWrap];  



    return s.height; //this will give you height of UILabel view you can change using addition according your requirements 
} 

希望を上書きすることでレイアウトしたい場合があり、この意志お助けください..

関連する問題