現在、私は、iOS開発に関するスタンフォード講演に従っています。私は、スマイリーフェイスのサイズを拡大または縮小できるピンチジェスチャーを作成します。ここでは、元のコードは次のとおりです。Objective c selector 'scale'で宣言されたメソッドがありません
faceView.addGestureRecognizer(UIPinchGestureRecognizer(target: faceView, action: "scale:"))
しかし、Xcodeのは、その "no method declared with Objective c selector 'scale'
" を訴えました。
代わりに"scale:" with Selector("scale:")
の代わりに同じエラーメッセージが表示されました。私はオンライン研究のビットを行なったし、迅速2.2から、セレクタの構文は#selector(MyClass.methodName)
に変更されているので、私は
faceView.addGestureRecognizer(UIPinchGestureRecognizer(target: faceView, action: #selector(FaceView.scale)))
この時にコードの行を変更したことが分かった
は、エラーメッセージはありません表示されますが、私がプロジェクトを実行し、シミュレータのスマイリーフェイスを拡大または縮小しようとしたとき、サイズはまったく変わりません。
私はスケールがパラメータであると思う:function ...スウィフト2.2のシンタックスは '#selector(FaceView.scale(_ :)) ' –
です。セレクタに_:を追加しましたが、ピンチはまだ動作しません。申し訳ありませんが、私の質問があなたに馬鹿に聞こえる場合、私はちょうどこれの初心者です。あなたは他の可能性について考えてもらえますか?あなたの助けをもう一度ありがとう! – Thor
これについて何も愚かなことはありません...今はブレークポイントでチェック...メソッドと呼ばれるかどうかは –