2010-12-15 10 views
1

私は、次の操作を実行しようとしています:サブクラスのUIViewと表示する複数のインスタンス

  1. は、カスタムUIViewのインスタンスを表示します。このUIViewサブクラスは、手作業で作成したくないものを表示するため、Interface Builderからそのコンテンツをロードする必要があります。 私の質問はです:UIViewサブクラスでInterface Builderからどのようにロードできますか?

  2. このビューを最終的に画面からアニメーション化してリリースします。 (私はその方法を知っています:-))

  3. GOTOステップ1つまり、私のUIViewの新しいインスタンスを作成して表示します。

おそらくノービスの質問ですが、わかりません。

答えて

1

Interface Builderからインターフェイスを読み込むには、UIViewControllerを使用する必要があります。ただし、インターフェイスビルダを使用しない場合は、uiviewサブクラスを作成し、インターフェイスを作成してクラスのインスタンスを作成することができます。

MyView *view = [[MYView alloc] initWithFrame:theFrame]; 
MyView *secondView = [[MyView alloc] initWithFrame:theFrame]; 
//do stuff with the views 
//release the views 
[view release]; 
[secondView release]; 
+0

手作業で完了しました... – fabian789

+0

そして、これはどこで行いますか? –

3

iOS 4.0以降では、nibファイル(+nibWithNibName:bundle:)を参照するUINibのインスタンスを作成し、ペン先のオブジェクトを-[UINib instantiateWithOwner:options:]でインスタンス化します。あなたも、iOSの3.xのをターゲットにする必要がある場合は

、呼び出し:nibファイル内のオブジェクトの配列を返します

[[NSBundle mainBundle] loadNibNamed:owner:options:] 

を。

+0

私はこのアプローチを使用しましたが、丸みを帯びたエッジビューのコーナーを透明にすることに成功しませんでした。私のNIBがロードされたカスタムUIViewは、角の丸い四角形ではなく、四角形の四角形です。助言がありますか? – maralbjo

+0

相手とは何が関係していますか? –

関連する問題