簡體   English   中英

UITableViewCellStyleSubtitle的UITableViewCell上的自動布局約束

[英]AutoLayout Constraints on UITableViewCell of UITableViewCellStyleSubtitle

我正在使用UITableView並使用Apple提供的UITableViewCell Subtitle樣式。

我也在使用首選字體,以便它們與動態類型一起使用。 如果用戶轉到“設置”並更改UI字體大小,它也會影響我視圖中的字體。

我還允許它使用row.estimatedRowHeight根據文本的長度動態選擇行高。 這很棒,因為字體較大且具有多個行文本時,單元格將進行相應調整。

問題是使用圖像。 圖像大小不同,因此請按比例縮小。 縮放有點像自動像元高度的命中或遺漏。 可能無法及時完成,因此高度的系統計算可能會計算錯誤。

然后我的問題是,是否可以手動將約束添加到UITableViewCellimageView屬性,以使其具有88像素的設置寬度和高度。 這樣,即使圖片尚未完成大小調整,它至少也會正確計算包含單元格的高度嗎?

或者,也許最好問一下:當單元格和文本標簽根據內容的長度和大小動態調整大小時,圖像的寬度/高度是否可能具有靜態值?

謝謝!

有一個很好的庫可以動態創建UI。 稱為制圖https://github.com/robb/Cartography

以下代碼有助於按圖像視圖高度創建可調整大小的單元格:

import UIKit
import Cartography

class TableViewCell: UITableViewCell {
@IBOutlet weak var resizableImage: UIImageView!

override func awakeFromNib() {
    super.awakeFromNib()
    // Initialization code
}

override func setSelected(selected: Bool, animated: Bool) {
    super.setSelected(selected, animated: animated)
}

func configurate() {

    constrain(self.resizableImage) { view1 in
        view1.width == view1.height
        view1.top == view1.superview!.top
        view1.bottom == view1.superview!.bottom
    }

    constrain(self.resizableImage) { view1 in
        view1.height == 88
    }
}

}

暫無
暫無

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

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