プロジェクトをユニバーサル アプリケーションに変更し、Xcode の更新バージョンに切り替えた後に発生した問題があります。
現在、私のアプリケーションには、ボタンのあるコントローラーを備えたナビゲーション バーがあります。ユーザーがボタンをクリックすると、ボタンは UIPopoverController をポップアップ表示します。ここではすべてが順調でした。今、私は UIPopoverController 内のリストを操作しようとしましたが、リストにはまったく反応がありません。さらに、ポップオーバー コントローラーの外側をタップしてポップオーバー コントローラーを閉じようとすると、ポップアップはまったく閉じず、ポップオーバー コントローラーの背後にあるコントロールを操作することもできます。
Xcode を最新の IOS に更新する前は問題なく動作していました。私が変更したコード内では、xib ファイルにウィンドウ ビューを持たせ、アプリ デリゲート ファイル内でその xib ファイルを初期化しました。
これを以下のコードに示します。
TViewController* controller = [[TController alloc] initWithNibName:@"MainViewController_IPad" bundle:NULL];
[controller.navigationController setNavigationBarHidden:TRUE animated:TRUE];
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
[self.window setRootViewController:controller];
[self.window makeKeyAndVisible];
//((TopicShowViewController*)self.window.rootViewController).navigationController.navigationBarHidden = true;
self.navigationController = ((TopicShowViewController*)self.window.rootViewController).navigationController;
self.navigationController.navigationBarHidden = true;
[controller release];
上記のコードでは、window オブジェクトを作成する必要がありますが、TViewController 自体には既に window オブジェクトがあります。xib ファイルのウィンドウ オブジェクトまたは上記のコードからウィンドウ オブジェクトを明示的に初期化せずにこれを実行すると、TViewController は期待どおりに表示されません。
ここで何が問題なのかわかりません...説明が長すぎて理解できないかもしれませんが、助けてください。