1. 程式人生 > >ios-tableView自動計算行高

ios-tableView自動計算行高

最近通過學習瞭解到一個東西就是tableView可以自動的計算行高了,只需要配合autoLayout來使用就可以了

先設定如下所示的程式碼

 //先設定預估行高
       tableView.estimatedRowHeight = 200
      //再設定自動計算行高
      tableView.rowHeight = UITableViewAutomaticDimension
然後你要保證你在cell裡面的控制元件,自上而下是有約束條件的最後一個控制元件要麼有高度的限制要麼有底部的約束限制,這樣自上而下才可能計算成功。也就是說設定約束的時候必須注意每個控制元件在垂直方向上必須都有約束。

比如說這樣子,我們設定了高度的約束,頂部的約束,然後最下面那個控制元件我設定了頂部的約束和底部的約束

  //2、自動佈局,新增頂部的約束
       contentView.addConstraint(NSLayoutConstraint(item: statusCellTopView, attribute:.top, relatedBy: .equal, toItem: contentView, attribute: .top, multiplier: 1, constant: 0))
       //新增左邊的約束
       contentView.addConstraint(NSLayoutConstraint(item: statusCellTopView, attribute: .left, relatedBy: .equal, toItem: contentView, attribute: .left, multiplier: 1, constant: 0))
       //新增右邊的約束
       contentView.addConstraint(NSLayoutConstraint(item: statusCellTopView, attribute: .right, relatedBy: .equal, toItem: contentView, attribute: .right, multiplier: 1, constant: 0))
       //新增高度的約束
        contentView.addConstraint(NSLayoutConstraint(item: statusCellTopView, attribute: .height, relatedBy: .equal, toItem: nil, attribute: .notAnAttribute, multiplier: 1, constant:CGFloat(WBCellMargin+WBCellIconViewWH)))
        
       //新增正文的頂部約束
        contentView.addConstraint(NSLayoutConstraint(item: ContentText, attribute: .top, relatedBy: .equal, toItem:statusCellTopView, attribute: .bottom, multiplier: 1, constant: CGFloat(WBCellMargin)))
       //新增正文的左邊的約束
        contentView.addConstraint(NSLayoutConstraint(item: ContentText, attribute: .left, relatedBy: .equal, toItem: contentView, attribute: .left, multiplier: 1, constant: CGFloat(WBCellMargin)))
        //設定底部的約束
        contentView.addConstraint(NSLayoutConstraint(item: ContentText, attribute: .bottom, relatedBy: .equal, toItem: contentView, attribute: .bottom, multiplier: 1, constant: CGFloat(-WBCellMargin)))





相關推薦

ios-tableView自動計算

最近通過學習瞭解到一個東西就是tableView可以自動的計算行高了,只需要配合autoLayout來使用就可以了 先設定如下所示的程式碼 //先設定預估行高 tableView.estimatedRowHeight = 200 //再設定自動計

iOS-仿赤兔、新浪微博動態列表(帶評論、點贊、轉發和分享,自動計算功能)

       最近有空整理一下專案,做了一個仿赤兔、新浪微博動態列表(帶評論、點贊、轉發和分享,自動計算行高功能)的DEMO。HKPTimeLine   ,喜歡的可以star一下哦。         使用到的第三方框架有:Masonry,HYBMasonryAutoCe

Masonry自動計算

前言 還在手動計算UITableViewCell的行高嗎?還在每次都因為需求變化一點就要大量調整cell的高度而煩惱嗎?現在教大家如何通過Masonry的自動佈局來實現自動計算cell的行高!!! 在github沒有找到基於Masonry自動計算

iOS tableView自動

1.在使用tableView展示頁面的時候,cell中一般是展示圖片和文字,由於展示內容的不同,很多時候就需要用到自動行高.使用需要下面的幾個操作,佈局以masonry為例. 步驟1: 在tableView的設定中需要以下兩行程式碼.第一行代表的是預設高度為100,第二行

UITableView!別再用代碼計算了(一)

dev count layout 們的 -o @property 感覺 ref 還在 你還在用代碼去計算行高嗎?你不感覺那種方式很low嗎?從今天起,試著做些改變吧! 別給我講你喜歡寫代碼的感覺,你就是要用代碼去計算行高,那我這篇文章不適合你。 在講解復雜內容之前,還是先學

iOS tableviewCell點選

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {   

VBA:設定區域顯示或者隱藏,顯示的單元格自動設定

Private Sub Worksheet_Activate() Dim A As Range, RN As Range, RNS As Range, i As Integer For Each A I

Fastreport中列寬固定,根據字段內容多少自動調整

nbsp max ast 字段 fas etc chm span pan 1、設置Band Allowslip 選 true stretched 選 true 2、設置Memo stretch 打勾 stretchmode選smMaxHeight Fastreport

tableView計算動態的總結

rect mar view rac 寫到 ora attr ont pen 研究tableView怎麽計算動態行高研究了兩天一直還不太會,今天最終做出來了想要的效果。 首先。我在網上搜集了非常多資料,各種大神的總結,然後開始看、研究、試驗,基本思路都是一樣

iOS中最簡單實用的自定義動態返回的cell,動態計算cell的高度

      iOS專案開發中,需要動態返回行高自定義cell的場景可以說是數不過來,可以不誇張的說,只要伺服器返回的同一個欄位的文字字數無限制,那麼我們客戶端在設定的時候就要動態返回行高。      場景:1.當需要tableview展示資料時,一般頭像,暱稱,等資訊都

iOS動態佈局(區別於傳統計算字數)

iOS動態杭高一般都採用sizeWithFont: constrainedToSize:這種方式來計算出高度 然後返回行高;最近我發現一種新的方式,就是不需要計算的,動態佈局;只需要在tableView裡面,分三個步驟來寫:1:給 estimateRowHeight 賦值,這

Masonry自動計算cell:HYBMasonryAutoCellHeight

前言 還在手動計算UITableViewCell的行高嗎?還在每次都因為需求變化一點就要大量調整cell的高度而煩惱嗎?現在教大家如何通過Masonry的自動佈局來實現自動計算cell的行高!!! 在github沒有找到基於Masonry自動計算行高的

rmReport 自適應自動

.com ret 其他 rep true 技術分享 epo log bsp 這個問題 1.先中主項數據--屬性--stretched(伸展):true 選中主項數據中的所有列--屬性--其他屬性--自動折行

iOS開發tips-UITableView、UICollectionView/尺寸自適應

row wak 舉例 equal dds nib emp self 約束 UITableView 我們都知道UITableView從iOS 8開始實現行高的自適應相

20180428 xlVBA自動設置成績條

with 打印 cells class variant none while sheet range ‘自動設置行高 傳入工作表Sht 和 每頁打印的行數RowsInOnePage Public Sub AutoSetRowHeight(ByVal Sht As Wor

R: 自動計算代碼運時間

nor proc 自動 color RM fff time() style ron ################################################### 問題:代碼運行時間 18.4.25 怎麽計算代碼的運行時間? 解

iOS開發- UILabel 自動 及 高度自適應

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

說說tableViewCell計算

UITableView 是在app介面裡非常常用的一個控制元件了,開啟一個app,內容列表 作者列表 朋友圈列表等等,,,都離不開 UITableView 。 而 UITableView 的精髓,則是在 UITableViewCell 展現的, 最常用的 自定義cell 有的行高是固定的,而大部分 則需

UITableView-hightForRow呼叫時刻-Cell計算和快取Cell

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px "Yuanti SC"; color: #000000; background-color: #ffffff } 一、hightForRow呼叫時刻  這個方法的特點:  1.預

關於德地圖在iOS中呼叫騎導航

SDK中實時導航時可以進行不同的路線規劃,這塊又跳到各自的路徑規劃頁面,或者串聯不起來。高德給的demo中也沒有騎行導航的相關示例,網上也查不到相關有用的資訊,所以只能自己深入檢視SDK,發現如果想要實現在移動端的騎行導航,步驟如下: 1、獲取起始點和終點的經緯度座標