如何以编程方式调整uilabel和uitableviewcell高度?

时间:2017-02-22 22:43:12

标签: uitableview swift3 uilabel

我知道调整UILabel高度和UITableViewCell可能是一个相当标准的问题,但我找到了很多基于故事板和检查员的答案,但不是仅使用Swift 3.我创建了一个表格,覆盖屏幕。细胞的高度确定如下:

    func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {   
        return UITableViewAutomaticDimension
    }

我的tableViewCell中有几个对象,一个UIImageView(myImage)和一个UILabel(myText),在自定义类中设置。定位和大小调整在cellForRowAt。

中进行
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
    {
        let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath) as! CustomCell
        cell.myImage.image = UIImage(named: "MyImage")
        cell.myImage.layer.frame = CGRect(origin: CGPoint(x: 0, y: 10), size: (cell.myImage?.image?.size)!)
        cell.myText.text = myArray[indexPath.row]
        cell.myText.frame = CGRect(x: UIScreen.main.bounds.size.width * 0.25, y: 0, width: UIScreen.main.bounds.size.width * 0.7, height: 90)
        cell.myText.numberOfLines = 0
        return cell
    }

结果是一堆堆叠的细胞,彼此重叠。我该怎么做才能将UILabel框架的高度调整为来自myArray的文本量,并调整单元格高度,使其至少达到myImage或myText的高度?

0 个答案:

没有答案