1

Facebook のナビゲーション メニューのようなものを実装したいと思います。メニュー ボタンをクリックすると、現在のビューがスライドされ、その下のメニューが表示されます。問題は、メニューを常に基になるビューとして保持する方法です。

メニューには、現在のビューまたは現在のセクションを強調表示する tableView があります。現在、メニューが割り当てられる各ビューにプロパティがありますが、メニューにシングルトン UIView を設定する方法がわかりません. 言い換えれば、メニューがシングルトンでない場合、私はこれを行うことができます:

self.menu = [[[NSBundle mainBundle] loadNibNamed:@"menu" owner:self options:nil] objectAtIndex:0];

ただし、その場合は、ビューごとに新しいメニューを作成しています。各ビューに同じメニューを割り当てる必要があります。

提案?


メニュー ビューをプロパティとして持つシングルトン NSObject の作成についてはどうでしょうか。

次に、シングルトンからこのビューを取得して、各ビューの self.menu に割り当てることができますか?

4

2 に答える 2

2

必要なすべての異なるビューを処理する何らかのメイン ビュー コントローラーがあると思います。

このView Controllerには、「メニュービュー」を保存するプロパティがあります。メニュー内の項目に対して新しいView Controllerを作成するときは、メインView Controllerに保存されている「メニュービュー」への参照を渡します。

これは、シングルトンを使用しなくてもうまくいく可能性があります。

于 2012-10-10T16:37:10.767 に答える
1

その動作を模倣するオープンソースのコントローラーが多数あります (例: this onethisまたはthis ) - それらの実装をチェックして、それらがどのように機能するかを理解することができます (またはプロジェクトでそのまま使用します)。

基本的に、@sergioが言ったように、メニューコントローラーとコンテンツコントローラーの両方とそれらの間のナビゲーションを処理する「メイン」ビューコントローラーを作成する必要があります。

于 2012-10-10T16:39:18.987 に答える