1

Xcode4.3 を使用するプロジェクトがありますが、Xcode を 4.4.1 にアップグレードすると、エラーが発生しました。私のアプリにはエラーはありませんが、実行時にエラーが発生します。
それらの最初は、「ウィンドウのないビューからはポップオーバーを表示できません」です。 MainViewController があり
、この ViewController は別の ViewController をポップオーバーで呼び出します。MainViewController に戻そうとすると、アプリがクラッシュします。これは私のコードです:

-(void)clearAnimated:(BOOL)animated{
   if(self.popover &&self.popover.popoverVisible){
      [self.popover dismissPopoverAnimated:animated];
   }
}

したがって、いくつかの調査の後、解決策は次のとおりであることがわかりました。

-(void)clearAnimated:(BOOL)animated{
   if(self.popover &&self.popover.popoverVisible){
      if (self.view.window != nil)
         [self.popover dismissPopoverAnimated:animated];
   }
}

私のアプリはクラッシュしなくなりましたが、ポップオーバーがあった場所である MainViewController では、ポップオーバーがまだそこにあるように、影のようになっています。
次に、SecondViewController に移動しようとすると、エラーが表示されます...
どうすればポップオーバーを閉じることができますか?

4

0 に答える 0