简体   繁体   中英

Change static tableview cell height dynamically

I have a tableview. I created it from storyboard it is a static tableview.(I am using it for profile settings).

But i have to change height of the first row of this table view dynamically and i don't want to change other cell heights. They should use their storyboard height values. How can i do this?

I tried following code:

override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
    if indexPath.row == 0 {
        return 100
    }
    return (tableView.cellForRow(at: indexPath)?.bounds.height)!
}

But this is setting 100 for all cells.

My tableview:

在此处输入图片说明

Use the following override function..

override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
if indexPath.row == 0 {
    return 100
}
    return UITableView.automaticDimension
}

But you have to make sure that every item in the static tableview have (top/bottom/left/right) constraints. it only works when it have all these constraints on it.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM