アプリ制作初心者です。
お力添えよろしくお願いします。
現在、こちらのサイトを見ながらpopupを作成中なのですが、エラーが出てしまい、消し方が分かりません。
https://qiita.com/dondoko-susumu/items/7b48413f63a771484fbe
ちょっと古めなようなので、バージョンの変更により型が変わったのではないかと思います。
発生しているエラーメッセージ
「該当のソースコード」の touchesEnded のところにこういうエラーが出ています。
Declaration 'touchesEnded(touches:withEvent:)' has different argument labels from any potential overrides
該当のソースコード
Swift
1override func touchesEnded(touches: Set<UITouch>, withEvent event: UIEvent?) { 2 super.touchesEnded(touches, with: event) 3 for touch: UITouch in touches { 4 let tag = touch.view!.tag 5 if tag == 1 { 6 dismiss(animated: true, completion: nil) 7 } 8 } 9 }
###開発環境
Swift5
MacOS 11.2.2
Xcode 12.4
Xcodeを開ける環境にないので提案だけになりますが、該当メソッドはエラーメッセージが入っている通り、引数の名称が変わっています。
https://developer.apple.com/documentation/uikit/uiresponder/1621084-touchesended
func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?)
と変更し、続く行も
super.touchsEnded(touches, with: event)
と書き直してみたらいかがでしょうか(たぶん、途中まで入力すると補完が効くと思います)。
もしかしたら、Xcodeが引数の候補を黄色い三角(⚠️)で出している可能性もありますが、どうでしょうか。
上記の通りにしたら、エラーがスッキリ消えました!ありがとうございます!
解決できたようでよかったです。
回答1件
あなたの回答
tips
プレビュー