質問: bounds } } ```
回答: この辺り、自分でも曖昧なままで今までやってきていたのですが、ご質問を拝見したのをきっかけにあれこれ調べなおしてみました。 iOS View プログラミングガイド View Programming Guide for iOS UIView `UIView`のクラスリファレンスでさえかなりの量のあるドキュメントですんで、結論的な部分だけ書かせていただくと、「サイズがピッタリに合う」動作は * 親View側の`autoresizesSubviews`プロパティ * 子View側の`autoresizingMask`プロパティ ...の値で決まると言うことです。 それぞれ、storyboard/xibのInspectorでは、 `autoresizesSubviews`: !autoresizesSubviews `autoresizingMask`: !autoresizingMask に対応しています。 と言うわけで、**1つ目** についてですが、上記各プロパティの設定が`true`/上下左右のマージンが固定(どちらもstoryboard/xibエディターでの初期状態)になっているためでしょう。 以下に述べますが、`translatesAutoresizingMaskIntoConstraints`を`false`にしても、(制約は使用しない形で)Autoresizingの動作は行われる、と言うことです。 **2つ目**についてですが、`translatesAutoresizingMaskIntoConstraints`の値というのは上記のAutoresizingの動作を * 制約(constraints)に変換して他の制約と一緒に制約によるサイズ解決の一環として行う * 旧来のAutoresizingの動作(制約とは別物)として行う かを選択するものなので、微妙な動作はiOS(およびSDK)のバージョンによって変化があったかもしれません(制約解決のアルゴリズムは間違いなく変化があって、同じ制約の付け方でもバージョンによってはレイアウトが崩れるなんて経験はおありかと思います)が、コードで直接`frame`等を操作するなら`translatesAutoresizingMaskIntoConstraints`の値だけでなく、上記のAutoresizingの設定も見直さないとダメなはず、と言うことになります。 (申し訳ありませんが、力尽きまして、`frame`の直接指定・旧来のAutoresizing・制約の解決がどのような優先順位・実行順序で行われるのかまでの記述は探せていません。) と言うわけで2つ目のご質問に関してはきちんとした回答になっていないような気がしますが、とりあえずのご報告ということで。