tableview cell how do we resize cell in swift along with image and label

后端 未结 3 604
执笔经年
执笔经年 2020-12-02 03:00

when we have a lable and image in tableview cell how do we resize cell in swift or lable as per the text in the Last cell(in picture) there are some more lines of text bu

3条回答
  •  暗喜
    暗喜 (楼主)
    2020-12-02 03:38

    Give constrain to your lable hight greater equal and put line to 0.

    var pickheight: CGFloat = 0.0
    

    Write this line in

    override func viewDidLoad() {
            super.viewDidLoad()
            tableTrip.rowHeight = UITableViewAutomaticDimension
    }
    

    Method for increase tableview cell .

    func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
    
         pickheight = self.findHeightForText("Pass your text here like array value as String ", havingWidth: self.view.frame.size.width - 116, andFont: UIFont.systemFontOfSize(14.0)).height
    
         return "YOUR_DEFALUT_CELL_SIZE" + pickheight
    }
    

    Method for find text hight for cell..

    func findHeightForText(text: String, havingWidth widthValue: CGFloat, andFont font: UIFont) -> CGSize {
            var size = CGSizeZero
            if text.isEmpty == false {
                let frame = text.boundingRectWithSize(CGSizeMake(widthValue, CGFloat.max), options: .UsesLineFragmentOrigin, attributes: [NSFontAttributeName: font], context: nil)
                size = CGSizeMake(frame.size.width, ceil(frame.size.height))
            }
            return size
    }
    

提交回复
热议问题