【Swift エラー】Method '' with Objective-C selector 'delete:' conflicts with method 'delete' from superclass 'UIResponder' with the same Objective-C selector
storybordから引っ張って、deleteという関数を作成しようとしたときに発生したエラー。
以下のように表示された。
Method 'delete' with Objective-C selector 'delete:' conflicts with method 'delete' from superclass 'UIResponder' with the same Objective-C selector
原因
よくわからないが、調べているとコンパイルエラーが発生しているらしい。
Swiftではオーバーロードが可能だが、Objective-cではオーバーロードができないため発生する。
Swiftでは引数または返り値が違う場合は同じ名前(識別子)で複数の関数を定義することができ、これを「オーバーフロー」という。
つまり、引数が文字列(String)や数字(Int)で違うなら、関数の名前は同じでもいいというもの。1つでもどこか違うなら、名前は同じでいいよってことですね。(ややこしいけど)
解決策
・名前を変える
私の場合、メモの削除機能だったため、deleteだった関数名をdeleteMemoとかに変更したらエラーは出なくなった。
Author And Source
この問題について(【Swift エラー】Method '' with Objective-C selector 'delete:' conflicts with method 'delete' from superclass 'UIResponder' with the same Objective-C selector), 我々は、より多くの情報をここで見つけました https://qiita.com/miyu0001/items/4881b94372ee6cd45d1a著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .