###実現したいこと
タイトルの通りなのですが、AutoLayoutでもコードでもいいので各機種の画面サイズに比例させてアスペクト比を保ったままUIViewなどの部品のサイズを変更させたいです。
最後に2枚のスクリーンショットを貼りました。位置は異なりますが、このような感じでアスペクト比を保ったままサイズを変更できればと考えています。
制約は上記に加えてViewの中心が垂直水平方向の中心、画面のど真ん中に配置するということだけです。
アプリケーションを作る際に毎回AutoLayoutに苦戦させられています。
サイズ変更させることだけを考えて、以下のコードでサイズを調整しようと思いましたがうまくいかず、iPhoneサイズで設計するとiPadでビルドした時左上に偏ります。
swift
1imageView.frame = CGRect(x: 0, y: 0, width: UIScreen.main.bounds.width * 0.9, height: UIScreen.main.bounds.height * 0.9)
extension CGRect { init(_ x:CGFloat, _ y:CGFloat, _ w:CGFloat, _ h:CGFloat) { self.init(x:x, y:y, width:w, height:h) } }
また処理の優先順位によっては設計が崩れるかもしれないと考えいるのですが、コードで実装した後にAutoLayoutで制約をかけることはできますか?
似たような質問がいくつかありましたが解決には至りませんでした。
よろしくお願いします。
追記
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2019/01/24 12:38