0

注釈の吹き出しが選択されたときに、詳細 (マップ ビュー) からマスター (UITabBarController) 内の最初のタブに移動したいと考えています。この最初のタブは、更新したいテーブル ビューです。

テーブル ビューにセグエして「置換」のセグエ スタイルを使用すると、タブ バーが失われます。「プッシュ」を選択すると、レシーバーがナビゲーション コントローラーではないというランタイム エラーが発生します。

タブバーコントローラーにセグエし、マップビューにブール値を設定してから、セグエをドロップして目的の場所 (テーブルビュー) に追いつくか、アプリデリゲートを使用することができると思いますが、利用可能な場合は、よりエレガントなソリューション。

4

1 に答える 1

0

あなたの要件を正しく理解している場合、いくつかのタブを持つ UITabBarController があり、その上に詳細 (マップ) ビューを一時的にプッシュしたいと考えています。マップ ビューが閉じられたら、同じ最初の UITabBarController に戻りたいですか?

これを行うには、マップ ビューを "モーダル" としてプッシュすることをお勧めします。この場合、画面が占有されます。モーダル画面をそれ自体から閉じることはできないので注意してください。理想的には、最初に表示したビューコントローラーから閉じる必要があります。たとえば、モーダル ビュー コントローラーをプッシュするクラスの prepareForSegue メソッドでは、それ自体に参照を返すか、デリゲートを使用できます。

[modalViewController setParent:self];

次に、モーダル クラス内で、何らかのボタンまたはその他のイベントが却下をトリガーしたときに、次のことを行うことができます。

[parent.modalViewController dismissModalViewControllerAnimated:YES];

詳細については、http: //developer.apple.com/library/ios/#featuredarticles/ViewControllerPGforiPhoneOS/ModalViewControllers/ModalViewControllers.htmlを参照してください。

于 2012-05-08T06:10:35.683 に答える