0
私が作成し、私のUIScrollView
を初期化する方法である:UIScrollViewの幅と高さの制御
class MyViewController: UIViewController, UIScrollViewDelegate{
let items = 20, heightPerItem: CGFloat = 40;
var scrollView: UIScrollView!
var contentView: UIView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
scrollView = UIScrollView(frame: view.bounds)
contentView = UIView(frame: view.bounds)
scrollView.backgroundColor = UIColor.blackColor()
scrollView.autoresizingMask = UIViewAutoresizing.FlexibleHeight
var yStart: CGFloat = 0 - heightPerItem
for i in 0 ..< items {
yStart += heightPerItem
let label = UILabel(frame: CGRect(x: 0, y: yStart, width: self.view.bounds.size.width, height: heightPerItem - 1))
label.text = "\(i) testing..."
label.backgroundColor = UIColor.brownColor()
scrollView.addSubview(label)
}
view.addSubview(scrollView)
}
override func viewDidLayoutSubviews() {
scrollView.addSubview(contentView)
scrollView.contentSize.height = heightPerItem * CGFloat(items)
}
}
そして、ここでは、出力されます。
私は姿勢の変化を試したことがない場合、それは大丈夫でした:
ので、次の2点を見てみてください。
- は
scrollView
は(少なくとも私はscrollView.contentSize.height = heightPerItem * CGFloat(items)
を行うにはしたくない)、自動的に高さを取得する他の方法はありますか? scrollView
の幅が方向変更だけで変更されるようにコードを書き直すにはどうすればよいですか?
素晴らしい!しかし、それはポイントです:2.もう一度試してください1 –
希望、これは役立ちます – tosha