1
私は運動場でジェスチャー認識機能を使用しようとしていますが、問題があります。 「初期化される前に使用変数 『self.fooVarSwipe』を」早送りエラー:初期化前に変数 'self .___'が使用されています
class foo {
var fooVarSwipe: Any
var fooVarTap: Any
init() {
let gr = UISwipeGestureRecognizer(target: self, action: #selector(foo.bar))
let tr = UITapGestureRecognizer(target: self, action: #selector(foo.tar))
helloApple.addGestureRecognizer(gr)
helloApple.addGestureRecognizer(tr)
helloApple.isUserInteractionEnabled = true
self.fooVarSwipe = gr
self.fooVarTap = tr
}
@objc func tar() {
print("tapped")
}
@objc func bar() {
print("swiped")
currentViewNum = 1
}
}
私が午前の問題は、それが言っている「GRが聞かせて」で始まる行に:ここで
は私のクラスでありますどうしてこれなの?私はクラスを外部に初期化しますが、それでも私はエラーを表示しています。ご協力いただければ幸いです。 あらかじめお返事ありがとうございます。 Theo
"target:self"ではなく、 "target:____"にする必要がありますか?応答してくれてありがとう! –
Nope。変数をオプションとして宣言するだけです。 'var fooVarSwipe:Any ?, fooVarTap:Any? ' – mattd
ありがとう。出来た! –