實現自適應高度的 UITableViewCell 或 UILabel

在iphone開發中處理table時常常會有這樣的問題,table中cell的高度不是固定的,而是是根據其中的內容不同而不同的。對與這種情況,sdk本身並沒有很好的支持,經過一翻摸索,發現大家通常的做法都是在實現 heightForRowAtIndexPath 方法時,根據內容計算出來顯示的高度。

幸運的是,nsstring內置了幾個好用的函數可以方便的計算出來字符串被現實出來時佔有的屏幕高度:

  • - (CGSize)sizeWithFont:(UIFont *)font constrainedToSize:(CGSize)size; 
  • - (CGSize)sizeWithFont:(UIFont *)font constrainedToSize:(CGSize)size   
             lineBreakMode:(UILineBreakMode)lineBreakMode; 
  • - (CGSize)sizeWithFont:(UIFont *)font forWidth:(CGFloat)width   
              lineBreakMode:(UILineBreakMode)lineBreakMode; 
  • - (CGSize)sizeWithFont:(UIFont *)font   
              minFontSize:(CGFloat)minFontSize   
              actualFontSize:(CGFloat *)actualFontSize   
              forWidth:(CGFloat)width   
              lineBreakMode:(UILineBreakMode)lineBreakMode; 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章