2011-12-13 6 views
19

ストーリーボードの導入により、UI BuilderControllerのサブクラスを作成するときに.xib/.nibを作成することを選択しませんでした。それを新しいクラスに割り当てます。storyboardは.nibの必要性を排除しますか?

ストーリーボードでは、.xib/.nibファイルをいつ使用する必要がありますか?

ありがとうございます。

+0

iveはストーリーボードを使用したことはありませんが、アプリを作成するウィザードや少なくともビューのようなものではありませんか?私はそれが作成したビューと手動で作成されたビューに違いがあることを非常に疑う。私はこれらのxibファイルはまだそこに隠されているだろうと確信しています –

+0

それはファイルの階層にはありません、ルートフォルダに実際のファイルがありません。 –

答えて

11

ストーリーボードには、すべてのビュー用の.xib/.nibファイルが含まれていると思います。それはそれらの間の関係を表し、多くの意見がある場合には混乱を避けるのに役立ちます。また、コードを書くときにあなたの時間と神経を節約します。

+0

ありがとうございます。 .xibを使用することについてのストーリーボード時代の話から、これらすべてのチュートリアルを見ると、より快適になります。 –

+5

ストーリーボードを使用してインターフェース全体を再編集する前に、Jonathan Wightのテクノロジーに関する問題の完全な説明を読むことができます。http ://toxicsoftware.com/uistoryboard-issues/ –

+1

Brad Larsonのコメントに記載されているURLは移動したようですが、現在はhttp://toxicsoftware.com/uistoryboard-issues.htmlです。 – JosephH

4

ストーリーボードを使用する場合は、通常、別の.xibファイルを作成する必要はありません。 は、必要に応じて.xibファイルを使用します。特に複雑なビューを持っている場合は、それ自体で設定してください。しかし、ほとんどの場合、それを行う必要はありません。

+0

nibファイルを作成する必要はありませんが、特定のビューを再利用したい場合。たとえば、さまざまな場所に配置したいと思ういくつかの種類の評価(4つの星のうちの4つ)があるとしますか?簡潔で、正確で、ポイントツーポイントであるため、 – Besi

32

ストーリーボードでは、NIBファイルの必要性が完全に排除されません。 1つの一般的な例は、サブビューを作成してUIScrollViewに入るときです。ストーリーボードで別々にサブビューを作成することはできません。その代わりに、サブビュー用に独立したNIBを作成し、プログラムでスクロールビューに添付する必要があります。

実際、実行時に変更されるサブビューが必要なほとんどの場合、別々のNIBを使用することをお勧めします。

ストーリーボードは、特定の種類のアプリには最適ですが、リモートでも複雑なものであっても、非常にうまく機能します。もう一つの利点は、それらがうまく共存することです。ストーリーボードにプレースホルダビューを配置し、後でNIB定義のビューを使用してプログラマチックに入力することができます。

+0

+ 1です。実際に質問に答えることは言うまでもありません。 – sean

10

私は最近、絵コンテを試していると私は、その使用についての複雑な気持ちを持っている:

Proの

  • 利便性:あなたははるかに少ないコードを記述する必要があります。たとえば、コードを記述することなく静的ビューを表示することができます。
  • 概要:あなたはすぐにViewControllersが互いに
  • 効率にどのように関係するか見ることができます。シンプルなユースケースのために、私は絵コンテはるかに効率的な「古いやり方」よりも見つけます。

    例1:Editor > Embed In > Navigation Controllerおよびそれ以上のインスタンス化および構成は必要ありません。

    例2:TableViewに「プロトタイプセル」を作成すると、静的テーブルビューの作成を大幅に高速化できます。私の知る限り、これはこれは

コンの

  • :-)クールのnibファイル

  • not possibleをだされた私は、再利用性が何らかの形でストーリーボードに苦しんでいることがわかります。私は、複数のポイントから特定のViewControllerに分割することはできますが、あるケースではVCをPopoverとして使用し、別のビューではMaster-ViewControllerとして使用する可能性があるため、まだ制限があります。
  • あなたが大きなチームで働いていて、異なる人がアプリケーションのさまざまな部分を変更していると仮定すると、マージする必要があるモノリシックなストーリーボードが1つあれば、大きな問題がチームワークになる可能性があります。
  • 現時点では不可能なストーリーボードに既存のnibファイルを含めるか、参照するためのメカニズムが必要です。

だから私はまだ非常に魅力的な絵コンテ見つけるこれらの点を考慮すると、それは本当に大したことではありません両方のアプローチを組み合わせることは理にかなっています。さらに、この技術はまだかなり新しいので、近い将来に改善する可能性があります。

関連する問題