2015-09-29 15 views
8

とその内容のサイズにXIBのルートビューのサイズを変更し、サブビューとして単純なビューを追加します。は動的に私はXcodeでXIBを作成する自動レイアウト

XIB with rootview and subview

私は何を達成したいことはサブビューがあることです自動的にその周り20.0のマージンを残して、そのサブビューのサイズに固定されたサイズとrootviewのサイズを変更しています

Resized XIB

だから私はサブVIに固定幅と固定の高さの制約を追加ew。

Constraints View showing constraints

スーパービューは制約がないためでもない曖昧さや競合する制約があるはずです::私はスーパーのためにダウン縮小すると予想し、私は20.0マージンのための4つの制約を追加します制約に合致する。しかし、Xcodeは文句:rootviewが固定サイズを持っていたし、それはケースのように表示された場合

Warnings

これらの制約は、唯一の競合になります。だから私の質問は:XIBのルートビューを作成して、その内容に合わせてサイズを動的に調整できるようにするにはどうすればよいですか?

(Interface Builderを持つことも可能ということですか?)

+0

この問題を抱えている人は、心配しないでください。 XIBエラーを抑制するには、ビューの適切なサイズを設定するだけです。ビューを作成すると、自動的に制約を満たすようにサイズが変更されます。 – kelin

答えて

4

それは動的 その内容を一致させるためにその大きさを調整するようにどのように私はXIBのrootviewを柔軟にすることができますか?

インターフェイスビルダー。

スーパービューは制約がないため

そのだけではなく、スーパービューのいずれ 曖昧さや競合する制約があるはずです。それもペン先のオブジェクトです。このようなビューのシミュレーションサイズを定義します。これは、エラーを無音にするために使用できます。しかし、これもやはりシミュレートされています。

このrootViewはビューコントローラビューですか?はい、私は280と高さ168にその引っ越しを修正しようとしている理由は理解していません。

このビューは別の '親'ビューに追加する予定のカスタムビューです。次に、シミュレートされたサイズを280と高さ168に変更する必要があります。これをサブビューとして追加するには、2つの制約を追加して、この親ビューを「親」ビューに配置する必要があります。

+0

事は次のとおりです:ルートビューはテーブルビューのセルであると考えられます。もし私がautolayoutでそれを使いたいのであれば、最初に制約に適応するためにはルートビューが必要なので、フレームの高さを ' tableView:heightForRowAtIndexPath: 'メソッド。 – Mischa

+2

あなたの答えをありがとう!私は本当になぜこれが可能ではないのだろう... – Mischa

+0

これを使ってセルの高さを取得しようとしている場合。あなたは間違った方向にいる。 – BangOperator

0

私は(私の場合、それはへの不平等だったあなたは、高さの制約を設定するには、たとえば、手動でXIBを編集することによってこれを行うことができますが、全体のコンテナ

self.yourViewController!.view.translatesAutoresizingMaskIntoConstraints = false 
+0

いいえ、理由:1)私の質問では、 'UIViewController'ではなく、' UIView'を参照していました。 2)IB_DESIGNABLEビュー**コントローラ**のようなものはないので、このコードはInterface Builderではなく、実行時にのみ有効です。 3)@BangOperatorは彼の答えInterface Builder *で指摘しているように、常にIBファイルのルートビュー用の固定フレームを使用します。これはXIBまたはストーリーボードかもしれません。 – Mischa

0

の自動リサイズマスクを設定するのを忘れたと思います)最小の高さを設定します。

  1. 高さをサブビューに制約を追加
  2. は、制約にあなたを見つける
  3. テキストファイルとしてXIBを開きます(高さの値にCMD-F'ingによって)
  4. カットをddedとルートビューの制約セクション
  5. を開き、再びインターフェイスビルダーでXIB
  6. 制約が表示され、あなたがそれを編集することができますに貼り付け普通のように。
関連する問題