は、私はストーリーボードセグエを経由して、プログラムで表示された二次のViewControllerを持っていますAppDelegateは、メニュー項目のクリックによってトリガされます。スウィフトdismissViewController MacOSの
しかし、セグエがメインのViewControllerに接続されていても、次のコードは、二次ビュー却下されていません。
@IBAction func dismiss(_ sender: Any)
{
print("Hello? Gonna close?")
self.presenting?.dismissViewController(self)
}
はエラーはありませんが、機能はボタンを閉じ、正しいに呼び出されますクリックしますが、セカンダリビューは閉じません。私はdismissViewControllerのあらゆるバリエーションを無駄にしようとしました。
メインビューのボタンを使用して同じセグを有効にすると、すべてが正常に動作します。私は、単にボタンの束でメインビューを乱雑にしたくないです。
ご意見ありがとうございます、ありがとうございます。モーダルモードで表示されたビューコントローラのためにのみ機能しますdismissViewController
場合は、この行を'self.presenting?.dismissViewController(self)'が実行され、 'self.presenting'の値は何ですか? –
@DaveWeston、良い質問です。 'let x = self.presenting! 'を使って! NSViewController'として、**致命的なエラーでアプリケーションがクラッシュしました:オプション値**をアンラッピングしている間に予期せずnilが見つかりました。どうやらviewControllerのプレゼンテーションはありません。 –