HOME > 問題解決一覧 > [iOS][Swift]Type ViewController does not conform to protocol delegate ViewControllerDelagateのエラーが出る
独自デリゲートを実装している途中で下記のエラーが表示されるようになりました。
type XXXViewController does not conform to protocol delegate XXXViewControllerDelagate...
開発環境はこちらです。
項目 | 値 |
---|---|
Xcode | 8.0 |
Swift | 3.0 |
何が原因なのかよくわからないので、ご存知の方連絡お願いします。
自己解決しました。
このエラーは実装した独自のデリゲートメソッドの中の必須メソッドをDelegate先のクラスで実装してない場合に発生します。
なので、実装した必須のデリゲートメソッドを呼び出し先のクラスですべて定義して上げれば解決します。
また、デリゲートメソッドを 必須ではなく、オプショナル(任意)にしたい場合にはメソット定義の箇所で@obj optional
をつけて上げればオプショナルなメソッドになるので、それでもエラーが表示されなくなるでしょう。
// 独自デリゲート
@objc protocol XXXViewControllerDelegate{
// 必須デリゲートメソッド
func someMethod1()
// 任意デリゲートメソッド
@objc optional func someMethod2()
}
参考サイト
http://mirai-stereo.net/2014/11/07/swift-does-not-conform-to-protocol-uitableviewdatasource/
この記事に関する質問やご意見・ご感想がありましたら、下記よりコメントください。
Githubアカウントでログインしていれば誰でも投稿できます。