2016-08-30 14 views
0

ジェスチャ認識機能を宣言しようとしています。関数で宣言するとうまくいきますが、クラスレベルで宣言すると、複数の関数で使用できるようになり、エラーが発生します。'NSObject - >() - > ViewController'の値を期待される引数型 'AnyObject?'に変換できません。

'NSObject - >() - > ViewController'の値を期待される引数型 'AnyObject?'に変換できません。

私はこのようにそれを宣言しています:あなたはクラスレベルでそのインスタンスを宣言し、このようなviewDidLoadでオブジェクトを初期化するよりも、複数の機能にGestureオブジェクトが利用できる場合

let gestureBack = UIPanGestureRecognizer(target: self, action: Selector("wasDraggedBack:")) 

答えて

3

var gestureBack: UIPanGestureRecognizer? 

override func viewDidLoad() { 
    super.viewDidLoad() 
    self.gestureBack = UIPanGestureRecognizer(target: self, action: Selector("wasDraggedBack:")) 
} 
+0

私はそれを解決するために必要だったすばらしいおかげで、時間をとっていただきありがとうございます。これらの人々はすべて率を落とし、助けを惜しまない。あなたは努力をしてくれたことに感謝します。 –

+0

これは、プロパティを2回初期化することに注意してください。代わりに、暗黙のうちにアンラップされたオプション、またはhttp://stackoverflow.com/a/27667190/1187415のような遅延プロパティがあります。 –

+1

@MartinR今それは大丈夫ですか? –

関連する問題