絵コンテにのUIView
外側を含めることはできません。UIViewController
ストーリーボードには、現在の API を識別またはインスタンス化する方法がわからないためだと思います。それは私が自分のために使ってきたものです。解決策は、1 つに XIB を使用し、UIView
プログラムでロードすることです (以前と同じように)。ほとんどのアイテムにストーリーボードを使用し、複数のビュー コントローラー間で再利用可能なビューに XIB を組み合わせるとうまく連携することがわかりました。
オブジェクトが初期化されるカスタム オブジェクトの一部として XIB をロードするために使用するコードを次に示します。
- (id)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
if (self) {
// Initialization code
[[[NSBundle mainBundle] loadNibNamed:@"BannerView" owner:self options:nil] objectAtIndex:0];
[self addSubview:self.view];
self.frame = self.view.frame;
}
return self;
}
ビューをストーリーボードの黒いバーにドラッグすることについて。これらのビューは依然として の一部ですがUIViewController
、最上位ビューの「サブビュー」ではありません。ドキュメントのアウトラインは階層をうまく示していると思います。
次のビューには、メイン ビューのサブビューではないため、メイン ビュー階層の外側に 2.1.1 ビュー、2.1.2 ビューなどがあります。その結果、デフォルトでは表示されません。私はIBOutlets
セットアップを行っており、標準addSubview:
とremoveFromSuperview
.