我有一個表格視圖,其中我的單元格高度動態定義取決於它所代表的文本。自定義heightForRowAtIndexPath(CGSize sizeWithFont)與NSAttributedString iOS
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
//getting my text for this cell, the row etc ...
...
//here is the part interesting us
NSAttributedString* theText = [myTextForThisCell objectAtIndex:indexPath.row];
NSInteger labelWidth = self.tableView.bounds.size.width-HORIZONTAL_CELL_PADDING;
CGSize textSize = [theText sizeWithFont:[UIFont systemFontOfSize:customFontSize] constrainedToSize:CGSizeMake(labelWidth, MAXFLOAT) lineBreakMode:NSLineBreakByWordWrapping];
return textSize.height+VERTICAL_CELL_PADDING;
}
好吧,現在我的問題。 tableview是掃描plist文件後顯示包含給定字符串的行的搜索操作的結果。
到現在爲止就是這樣。但是現在用iOS 6和NSAttributedString可以輕鬆地將字符串中的大部分加粗,因此我決定大膽地使用搜索詞。
這是工作,它大膽的話我想,但現在我不能計算單元格的高度,因爲sizeWithFont要求一個NSString。由於粗體寬度較寬,我不能簡單地使用沒有屬性的字符串計算單元格高度。
我只是卡在這裏。
任何人都可以幫到我嗎?
只是因爲iOS的6.0 –
是當然的,NSAttributedText不可用之前iOS6的 – HpTerm
太謝謝你了。你的回答幫了我很多! – Karun