0

私のアプリの主な機能は、UITabBarControllerによって制御されます。ただし、UINavigationControllerを持つビューをロードする必要があります。を使用してUITabBarControllerに戻ると

        self.tabBarController.selectedViewController = [self.tabBarController.viewControllers objectAtIndex:0];

UITabBarControllerがクリックに応答しなくなりました。ビューにフォーカスがないようです。

ただし、このコードを使用してUITabBarControllerに戻すと、次のようになります。

[window addSubview:tabBarController.view]

ボタンが反応します。ウィンドウからビューを削除することは決してないため、「addSubview」の効率は低いように感じます。したがって、ビューの2番目のコピーをスタックに追加する必要があります。私は正しいですか?最初の方法を使用してボタンを応答させる方法はありますか?私にお知らせください。

4

1 に答える 1

1

NavControllerを正しく表示していないようです。ウィンドウに直接ビューを追加するべきではありません。あなたはそれを使用して提示したい

[myTabBarController presentModalViewController:myNavController animated:YES];

あなたがnavコントローラーを使い終わったら、あなたはそれを却下します

[myTabBarController dismissModalViewControllerAnimated:YES];

そして、すべてが機能するはずです。

ところで、これはすべてUIViewControllerのドキュメントと「iPhoneOS用のViewControllerプログラミングガイド」ドキュメントに記載されています。

于 2009-05-25T17:18:53.457 に答える