2011-07-28 8 views
0

テーブル内の各セルに最大3行のラベルがあるため、セルの高さはラベルの高さに依存するため、特定のセル(NSIndexPath)の高さを返すデリゲートメソッドがわかりますが、実際のセルを取得する必要があります高さを決定するために、私がcellForRow:atIndexPath:をheightForCell:と呼んだ場合、それは無限にループし、cellForRowもheightForCellを呼び出すと思います。それで、私はこれを処理できる方法はありますか?異なるセルの高さでUITableViewを処理する方法は?

ありがとうございます!

答えて

0

heightForRow:delegateメソッドの文字列にNSStringsサイズを使用できます。

CGSize maxSize = CGSizeMake(300, 800); //max x width and y height 
NSString *cellTitle = @"Lorem ipsum"; 
UIFont *stringFont = [UIFont systemFontOfSize:14]; // use the same font your using on the cell 
CGSize cellStringSize = [myString sizeWithFont:stringFont constrainedToSize:maximumSize lineBreakMode: UILineBreakModeWordWrap]; 

これは、あなたが、その後、ここからの高さを使用し、少しパディングを追加することができますCGSizeを与えるだろう。あなたがここでより多くの情報を見つけることができます:http://developer.apple.com/library/ios/#documentation/UIKit/Reference/NSString_UIKit_Additions/Reference/Reference.html

ティムを

関連する問題