概要
5ページ分する横スクロールアプリです
AutoLayout設定前はきちんと5ページ分スクロールします
実現したいこと
・全ての端末でスクロールビューを実現したい
起っている問題
・AutoLayoutを設定すると、スクロールしない・最後までスクロールしない・途中でスクロールがとまる
試したこと
1.ScrollViewに"Add New Constraints"で上下左右0の制約を追加
2.ContentViewを追加して"Content Layout Guide"にドラッグで上下左右0の制約を追加
3.ContentViewをドラッグして"Frame Layout Guide"に"Wqual widths"の制約を追加
4.ContentViewに"Height"の制約を追加
以上
「4.ContentViewに"Height"の制約を追加」は、赤い線の警告文を消すために追加しました。
参考
・iosアプリ開発AutoLayout徹底攻略
・よくわかるAutoLayout
・Xcode11のIBに追加されたContentLayoutGuideとFrameLayoutGuideについて
コード
import UIKit class ViewController: UIViewController { @IBOutlet weak var scrollView: UIScrollView! var imageArray = ["1","2","3","4","5"] override func viewDidLoad() { super.viewDidLoad() scrollView.isPagingEnabled = true scrollView.contentSize = CGSize(width: view.frame.size.width*5, height: view.frame.size.height) for i in 0...4{ print(i) let imageView = UIImageView() let imageName = imageArray[i] imageView.image = UIImage(named: "(imageName).jpg") imageView.frame = CGRect(x: CGFloat(i)*view.frame.size.width, y: 0, width: view.frame.size.width, height: view.frame.size.height) imageView.contentMode = .scaleAspectFit scrollView.addSubview(imageView) } } }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。