このコードでは上部にマージンが現れるのですが
python
1// screen size 2let w: CGFloat = self.view.frame.width 3let h: CGFloat = self.view.frame.height 4let sbh: CGFloat = UIApplication.shared.statusBarFrame.size.height 5// table size 6let tw = w * 3 / 4 7let th = h / 2 8let cg50:CGFloat = 50 9 10setUpTableView: do { 11 tableView.frame = CGRect(x: 0, y: h / 2 - th / 2 +sbh , width: w, height: h) 12 tableView.dataSource = self 13 view.addSubview(tableView) 14}
この下のコード(上部に50のマージンを設定するコード)だと失敗します。
python
1// screen size 2let w: CGFloat = self.view.frame.width 3let h: CGFloat = self.view.frame.height 4let sbh: CGFloat = UIApplication.shared.statusBarFrame.size.height 5// table size 6let tw = w * 3 / 4 7let th = h / 2 8let cg50:CGFloat = 50 9 10setUpTableView: do { 11 tableView.frame = CGRect(x: 0, y: cg50 , width: w, height: h - cg50) 12 tableView.dataSource = self 13 view.addSubview(tableView) 14}
原因の指摘を求めます。
失敗とは具体的にどうなりますか? sbh を足してないからでは?
あなたの回答
tips
プレビュー