2012-04-06 13 views
0

メインビューコントローラがUIViewControllerのアプリケーションを作成しています。グリッド内にいくつかのアイコンがあり、アイコンの1つがクリックされたときにこのグリッドを閉じる(スライドさせる)必要があります。これは私がすでにやったことです。問題は、グリッドが解消されたときに別のビューを画面の上部から表示することです。このビューは、この同じルートビューコントローラにあります。しかし、私はこのビューに他のView Controllerのコンテンツを表示したいと思います。たとえば、このビューではUINavigationControllerの中にUITableViewが表示され、ユーザーはTableViewsをナビゲートできます。別のViewControllerビュー内にViewController全体を表示

私はこれをやっている:

HorariosViewController *horarios = [[HorariosViewController alloc] init]; 
[vuashView addSubview:horarios.view]; 

HorariosViewControllerUINavigationViewControllerです。それは私に青のNavigationBarだけを表示し、self.navigationItem.title = @"Title"のような変更は機能しません。

ありがとうございます!

答えて

0

別のビューコントローラのビューをサブビューとして表示できますが、新しい接続を行うコードを記述しないかぎり、アウトレットとアクションは元のビューコントローラにリンクしたままになりますので、self.whateverは他のビューコントローラのプロパティに影響しません。

は(HorariosViewControllerがUINavigationControllerである場合も、それはのUIViewControllerとして作成されるべきではない。)

0

一つのアプローチは、その上にモーダル提示アイコングリッドと、既にそこにナビゲーション・コントローラを有することです。 (アニメーションなしでこのような方法でビューを設定することができるので、ユーザーはその下にナビゲーションコントローラが表示されません)。

グリッドがなくなると、アニメーションでdismissModalViewControllerを呼び出すことができます。

+0

これは良い解決策ですが、私はちょっと違った感じがします:グリッドが解消されると、Facebookアプリのように表示から完全に消えることはありません。 –

+0

アイコングリッドは何をしていますか?それが十分に簡単な場合は、ナビゲーションコントローラーのサブビューであるビュー(ビューコントローラーではない)にすることができます。あなたはそれを(そして部分的に)スライドさせるために、あなた自身の簡単なアニメーションを書くことができます。画面のビットを所有している2つのView Controllerは違法ではありませんが、推奨されていません。それが妥当かどうか私に教えてください。私は答えに少しイラストレーションのコードを追加します。 – danh

+0

アニメーションはalredyで動作していますが、グリッドを滑り落ちますが、まだ表示されているので、ユーザーはメニューに戻ることができます。アイコングリッドはUIImageViewです。私の問題は、いくつかのアイコンがクリックされたときに他のView Controllerの内容を表示することです。私は別の解決策を考えました:アニメーションを実行し、アニメーションの終わりに、必要なView Controllerを持つモーダル(アニメーションなし)のView Controllerを表示し、同じビューに見えるように設計されました。ウィンドウの下部にあるグリッドの上部。しかし、私はまだviewcontrollerのデータを見ることができません –

関連する問題