【Swift4】self.dimissが動かない
この記事の概要 Swiftにおいて、self.dismissが動かない、機能しない場合の対処法を調べた。 目次 この記事の概要 目次 やろうとしたこと 解決策 まとめ やろうとしたこと 二つの画面を繋ぐViewControllerで、「ボタンを押したら戻る」とい処理を実装したい時、 self . dismiss (animated: true , completion: nil ) を使う人って結構多いんじゃないかな、と思う。 自分もその一人だったのだが、なぜかdismiss君が言うことを聞いてくれなかったので、 症状と解決策をまとめた。 所謂「メモ帳アプリ」を製作していた時のこと。 二つ目のViewControllerに記入した内容がボタンを押したら保存されて、一枚目のTableViewに表示される仕組みである。 だが、二枚目の「投稿する」ボタンを押しても、元の画面に戻ってくれない。 self . dismiss (animated: true , completion: nil ) は、ちゃんと書いている・・・。どうしてだろう・・・? [図]メモ帳アプリのstoryboard 解決策 self . navigationController ?. popViewController (animated: true ) 解決策はズバリ、dismissをこちらのコードに変更したことでした。 おそらく、navigationcontrollerでembed Inしてたんですが、それが悪さをしていてdismissを使えなくしていたんでしょう。