###前提・実現したいこと
私はiOSアプリ開発初めて一か月で、プログラミング経験も浅い状態です。
現在私は時刻表を作ろうとしています。
そのためTableViewCellの上にLabelを3つ配置させて、それぞれのLabelに時間帯や分刻みの時刻を振り分けようとしています。
イメージはこのような形です。
https://hajihaji-lemon.com/smartphone/swift/table-view-cell/
分刻みの時刻の値の数が多いため、Label内で改行できて
Labelの高さに合わせてTableViewCellの高さを自動調節できるようにしたいです。
###発生している問題
Label内での改行は可能になったのですが、Labelの高さに合わせてTableViewCellの高さを自動調節できません。
Labelの高さに合わせてTableViewCellの高さを自動調節できる様にするにはどの様にすればよいでしょうか
import UIKit class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource { var dataList = ["時,平日,土日祝日","6,1,1","7,1,1","8,1,1","9,1,1","10,1,1","11,1,1","12,1,1","13,1,1","14,1,1","15,1,1","16,1,1","17,1 2 3 4 5 6 7 8 9 10 11 12 13 14,1","18,1,1","19,1,1","20,1,1","21,1,1","22,1,1","23,1,1"] @IBOutlet weak var TableView: UITableView! override func viewDidLoad() { super.viewDidLoad() TableView.estimatedRowHeight = 5 //ここでCellの高さ自動調節を命じています TableView.rowHeight = UITableView.automaticDimension } func tableView(_ tableView:UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCell(withIdentifier: "TimeCell", for: indexPath) let label1 = cell.viewWithTag(1) as! UILabel let label2 = cell.viewWithTag(2) as! UILabel let label3 = cell.viewWithTag(3) as! UILabel let arr = dataList[indexPath.row].components(separatedBy: ",") label1.text = arr[0] label2.text = arr[1] label3.text = arr[2] label2.numberOfLines = 0 label2.sizeToFit() //ここで改行を命じてします return cell } func tableView(_ tableView:UITableView, numberOfRowsInSection section:Int) -> Int { return dataList.count } }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/10/27 06:56
2019/10/27 14:28
2019/10/28 00:52