iOS開発でハマったのでメモとして残しておく
事象
iOS11ではUITableViewのレイアウトが崩れていないのにiOS10ではUITableViewのレイアウトが崩れてしまっていた。
原因
- 自動で高さを計算してくれてなかった。
- AutoLayoutの制約をStoryboardではなくコード上でレイアウトが組まれていただけだった。
対処
- iOS10以前もサポートするアプリは
public func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat {
return UITableViewAutomaticDimension
}
これでOSのバージョンに関係なく高さを自動で計算できます。