簡體   English   中英

具有動態高度的iOS Tableview

[英]iOS Tableview with Dynamic height

我正在使用動態單元格高度在Tableview上工作。

根據我的要求,我必須顯示40種不同的單元格。每個單元格都不同。

對於前。

一個單元格具有2個標簽,1個圖像視圖另一個單元格僅具有2個圖像視圖,另一個單元格具有5個標簽,1個文本視圖,2個按鈕,2個圖像視圖

我的問題是我無法靜態定義高度。 每個單元格中的標簽和textview都是基於運行時的文本。因此,我需要根據各個元素調整高度。因此,我根據以下代碼計算了標簽和textview的高度,

 CGSize constrainedSize = CGSizeMake((IS_IPAD)?765:285  , 9999);

 NSDictionary *dict=[array objectAtIndex:indexPath.row];

 NSDictionary *attributesDictionary = [NSDictionary dictionaryWithObjectsAndKeys:
 [UIFont fontWithName:@"Lucida Sans" size:(IS_IPAD)?18.0:12.0], NSFontAttributeName,
 nil];

 NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:[dict valueForKey:@"response"]attributes:attributesDictionary];

 CGRect requiredHeight = [string boundingRectWithSize:constrainedSize options:NSStringDrawingUsesLineFragmentOrigin context:nil];

 return requiredHeight.size.height;

上面的代碼很好用,但是為一個單元格計算5-10個標簽有點困難,因為我需要為每個單元格調用10次,所以這會導致在tableview上滾動緩慢,然后我需要更改每個標簽/ textview和imageview的y位置框架。是否有其他方法可以實現? 任何幫助將不勝感激。

謝謝。

最初為所有單元格設置一個占位符高度。 稍后嘗試以精確的高度重新加載單元。

編寫一種能夠計算特定單元格的大約高度的方法。 並將一些參數傳遞給它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM