自定義Cell高度 封裝在模型中

在項目中 使用tableView比較多,cell的高度有的時候不是固定的,所以需要根據模型計算高度,為了考慮效率和代碼易讀,我們把cell上控件的frame 封裝到模型中,
1、給所有控件的frame
2、cell的高度;

  @interface HLCellModel : NSObject
  //****** frame *******
   /**
   *  文字 圖片數據
   */
  @property(nonatomic,assign)CGRect iconFrame;
  /**
   *  cell高度
   */
  @property(nonatomic,assign) float cellHeight;
  @end

  @implementation HLCellModel
  //重寫模型cellHeight屬性的get方法
  -(float)cellHeight
 {
    if (_cellHeight == 0) {
    // ...計算所有子控件的frame cell的高度
     }
    return _cellHeight;
 }
 @end

 //在tableview上使用
 -(CGFloat)tableView:(UITableView *)tableView                                        heightForRowAtIndexPath:(NSIndexPath *)indexPath
 {
   HLCellModel * cellModel = [self.dataSourceArray objectAtIndex:indexPath.row];
    return cellModel.cellHeight;
 }
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 我們在上一篇《通過代碼自定義不等高cell》中學習了tableView的相關知識,本文將在上文的基礎上,利用sto...
    啊世ka閱讀 1,538評論 2 7
  • 發現 關注 消息 iOS 第三方庫、插件、知名博客總結 作者大灰狼的小綿羊哥哥關注 2017.06.26 09:4...
    肇東周閱讀 12,252評論 4 61
  • 1.xib方式創建 每個cell的顯示的內容都是固定的,也就是cell的高度都是相同的 加載數據 有plist文件...
    WeiHing閱讀 6,892評論 0 6
  • (27/100) 幕布文件 詳細介紹: 注:參考卡片搭建知識組塊。參考幕布詳細理解成甲老師的分享內容。 金句:我的...
    xiaolubobo閱讀 158評論 0 0
  • 存在感。 每天在熬夜。回到租住的地方就是吃飯看電視。然后玩手機。 然后熬夜看半個小時書。好,11點半,睡覺。 這樣...
    天風泠泠山月白閱讀 238評論 0 0