ストーリーボードを使用して、iOS 5.1 で iPhone アプリを作成しています。下部に UITabBar コンポーネントを持つ UIViewController があります。私は UITabBar デリゲート イベントを使用して、たとえば次のdidSelectItem
ように、各タブ ページに使用するさまざまなビュー コントローラーを読み込みます。insertSubview
[[self view] insertSubview:[salesQuotesVC view] belowSubview:mainTabBar];
ホスト ビューに挿入しているビュー コントローラーには、すべての自動サイズ調整アンカー/制約が有効になっている UITableView コントロールが含まれているため、使用可能なスペースに拡張する必要があります。また、シミュレートされたメトリクス Top Bar=Navigation Bar および Bottom Bar=Tab Bar もあります。3.5 インチと 4 インチ (iPhone 5) の画面を切り替えるときの UITableView のサイズ変更を除いて、すべて正常に動作します。Interface Builder を 3.5 インチのフォーム ファクタに設定すると、3.5 インチのデバイスでは問題なく動作しますが、4 インチのデバイスではテーブルが短すぎます。同様に、IB フォーム ファクタを 4 インチに設定すると、4 インチのデバイスでも問題なく動作します。テーブルが長すぎて、3.5 インチ デバイスのタブ バーの下に表示されます。
以前は 3.5 インチ/4 インチのデバイス間で自動サイズ変更の問題が発生したことはありませんが、これまでのところ、タブ ページに UITabViewControllers しか使用したことがありません。これは、UITabBar と UIViewController を使用して自分でタブの切り替えをコーディングしたのは初めてです (再利用の目的で行っています)。サイズ変更の問題はinsertSubview
?