iOS で を使用してフレームを作成している場合、プロパティをCGRectMake()
設定するか を使用すると、x、y、幅、および高さが求められます。これらを供給します。frame
initWithFrame:
しかし、自動レイアウトでは、次に、「x を真ん中に配置する」「幅を画面の半分に設定する」のように言いますCGRectMake()
。
で何を設定すればよいCGRectMake()
ですか? 0? 任意の値ですか?私が欲しいものに近いものはありますか?
iOS で を使用してフレームを作成している場合、プロパティをCGRectMake()
設定するか を使用すると、x、y、幅、および高さが求められます。これらを供給します。frame
initWithFrame:
しかし、自動レイアウトでは、次に、「x を真ん中に配置する」「幅を画面の半分に設定する」のように言いますCGRectMake()
。
で何を設定すればよいCGRectMake()
ですか? 0? 任意の値ですか?私が欲しいものに近いものはありますか?
自動レイアウトを使用する場合、frame
プロパティをまったく設定しないでください。を設定することはできますがframe
、そうすることには目的がなく、コードが誤解を招くだけframe
です。これは、 が制約から計算されるディメンションに取って代わられるためです。frame
混乱を避けるために、制約を使用してコントロールのサイズを完全に定義し、完全に設定しないようにすることをお勧めします。
したがって、プログラムでビューを作成する場合は、 の代わりに をinitWithFrame
実行してくださいinit
。translatesAutoresizingMaskIntoConstraints
また、 に設定することを忘れずNO
に、適切な制約をすべて追加して、レイアウトが明確になるようにしますが、競合する制約もないようにします。