単一の xib 複数の UIView を配置できることに気付きました。メイン ビューはファイルの所有者に関連付けられていますが、xib で他のビューを参照する方法は?
私の必要性:固定された上部と3つのタブボタンを持つタブバーによって作成された下部で分割されたxibビューがあります:各ボタンをクリックしてサブビューをロードする必要があるため、他のサブビューを配置することを考えています他のビューで同じ xib を使用し、オンデマンドでロードします。これを達成する方法は?ありがとう
他の Interface Builder コンポーネントと同様に、ヘッダー ファイルを作成IBOutlets
して追加のビューに関連付けることができます (または、XCode の自動アシスタント モードで作業している場合は、Ctrl キーを押しながらクリックしてビューをコードにドラッグすることもできます)。
たとえば、 というビュー コントローラとFooViewController
、それに対応するFooViewController.xib
インターフェース ファイルがあるとします。
@interface FooController : UIViewController
@property (nonatomic, retain) IBOutlet UIView *additionalView;
@end
...そして、追加のビューを対応するアウトレット (ファイル所有者の下の IB に表示されます) に接続するだけです。UILabel
またはを接続するのとまったく違いはありませんUIButton
。
ただし、注意すべきことの1つは、「私の考えは、他のビューの同じxibに他のサブビューを配置し、必要に応じてロードすることです」と言います。XIB ファイル内のすべてのビューは実際には同時に作成されるため、実際にはオンデマンドでロードされません。あなたが何かクレイジーなことをしていない限り、これが実際に問題になるとは思えません。