1

バーボタンアイテムを介して「Open-In」ダイアログを開くView Controllerがあります。

呼び出しコード:

UIDocumentInteractionController *docInteraction = [[UIDocumentInteractionController alloc] init];
docInteraction.URL = location;
docInteraction.delegate = self;
if ([docInteraction presentOpenInMenuFromBarButtonItem:self.openInButton animated:YES])
    self.openInController = docInteraction;

解雇コード:

UIDocumentInteractionController *openIn = self.openInController;
if (openIn) {
    [openIn dismissMenuAnimated:animated];
    self.openInController = nil;
    popupsDismissed = YES;
}

コードが閉じられた後、次の例外でアプリがクラッシュします。

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[A2DynamicUIPopoverControllerDelegate popoverController:animationCompleted:]: unrecognized selector sent to instance 0x1f82b4f0'

これは BlocksKit 定義のインターフェイスですが、特定のケースでは BlocksKit クラスを使用していません。0x1f82b4f0 は です<A2DynamicDelegate: 0x1f82b4f0; protocol = UIPopoverControllerDelegate>が、BlocksKit がここに関与する理由は謎です。例外を修正する方法について誰かが私に洞察を与えることができますか?

4

1 に答える 1