私はプログラミングとObjective Cには全く新しいです。私は空の画面とタイマーが1分かかるアプリケーションを作る方法が不思議でした。可能な限り早くタップすることができます。私はコードにUITapGestureRecognizer
を実装する方法を知りました。私のアプリケーションにUITapGestureRecognizerを実装するにはどうすればいいですか?
答えて
これはあなたのクラスでジェスチャー認識機能を実装する方法のステップバイステップガイドです:
は
UIGestureRecognizerDelegate
プロトコルにあなたのクラスに準拠しています。ジェスチャ認識プログラムをインスタンス化します。例えば、
ここUITapGestureRecognizer
をインスタンス化するために、私たちは行います:UITapGestureRecognizer *tapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTapFrom:)];
は、アクションがジェスチャーを処理するセレクタです。ここでセレクタのhandleTapFromは次のようになります。
- (void) handleTapFrom: (UITapGestureRecognizer *)recognizer { //Code to handle the gesture }
セレクタの引数はジェスチャ認識器です。私たちは、など、
UIGestureRecognizerStateBegan
、UIGestureRecognizerStateEnded
、同様に、例えば、我々はジェスチャー認識の状態を見つけることができ、そのプロパティにアクセスするには、このジェスチャー認識を使用することができます- インスタンス化されたジェスチャー認識上の所望の特性を設定します。たとえば、
UITapGestureRecognizer
の場合は、プロパティnumberOfTapsRequired
とnumberOfTouchesRequired
を設定できます。 ジェスチャーを検出するビューにジェスチャー認識機能を追加します。私たちのサンプルコードでは、我々は次のコード行でImageViewのにジェスチャー認識機能を追加します(私はあなたの参照のためにそのコードを共有する):ビューにジェスチャー認識を追加した後
[self.imageView addGestureRecognizer:tapGestureRecognizer];
、設定ジェスチャーレコグナイザーのためのデリゲート、つまりすべてのジェスチャーレコグナイザーのものを扱うクラス。
tapGestureRecognizer.delegate = self;
注:ビューにジェスチャー認識を追加した後に、デリゲートを割り当て、当社のサンプルコードでは、それは次のようになります。それ以外の場合、アクションメソッドは呼び出されません。
UITapGestureRecognizer *gestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideKeyboard)];
[self.tableView addGestureRecognizer:gestureRecognizer];
self.tableView.userInteractionEnabled = YES;
gestureRecognizer.cancelsTouchesInView = NO; // this prevents the gesture recognizers to 'block' touches
スウィフトでの例:
import UIKit
class ViewController: UIViewController {
@IBOutlet var myUIImageView: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
let singleTap: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: "myUIImageViewTapped:")
singleTap.numberOfTapsRequired = 1
singleTap.numberOfTouchesRequired = 1
self.myUIImageView.addGestureRecognizer(singleTap)
self.myUIImageView.userInteractionEnabled = true
}
func myUIImageViewTapped(recognizer: UITapGestureRecognizer) {
if(recognizer.state == UIGestureRecognizerState.Ended){
println("myUIImageView has been tapped by the user.")
}
}
}
そうです、userInteractionEnabledは必須です。ありがとう! –
なぜ "recognizer.state == UIGestureRecognizerState.Ended"をチェックする必要があるのか分かりません。私はこれをテストし、それもそれなしで動作します。私の仮定は、マルチタップジェスチャ認識装置に必要なことですが、シングルタップではまだ必要ですか? – plam4u
あなたはスウィフト(iOS9)とSpriteKitベースで作業している場合は、以下を試してみてください。
class GameScene: SKScene {
override func didMoveToView(view: SKView) {
let singleTap = UITapGestureRecognizer(target:self, action:#selector(self.handleSingleTap:))
singleTap.numberOfTouchesRequired = 1
singleTap.addTarget(self, action:#selector(self.handleSingleTap))
view.userInteractionEnabled = true
view.addGestureRecognizer(singleTap)
}
//event handler
func handleSingleTap(sender:UITapGestureRecognizer){
print("tapped")
}
}
- 1. アプリケーションにSAMLを実装するにはどうすればいいですか?
- 2. アプリケーションにタッチイベントを実装するにはどうすればよいですか?
- 3. 私のiPhoneアプリケーションにgoogle plus loginを実装するにはどうすればいいですか?
- 4. Javascriptのカラーピッカーを実装するにはどうすればいいですか?
- 5. Javaでzlib.compressを実装するにはどうすればいいですか
- 6. RecyclerViewでタブを実装するにはどうすればいいですか
- 7. クリックイベントでショートコードを実装するにはどうすればいいですか
- 8. webviewでフォントを実装するにはどうすればいいですか?
- 9. シンプレックスアルゴリズムをPythonで実装するにはどうすればいいですか?
- 10. 私のWebアプリケーションのWebページをAndroidアプリケーションで実行するにはどうすればいいですか
- 11. ランキングシステムを実装するにはどうすればいいですか
- 12. タイプ関数を実装するにはどうすればいいですか?
- 13. クラスを実装するにはどうすればいいですか?Interface?
- 14. セクションリサイクラービューを実装するにはどうすればいいですか
- 15. Azureアクティブディレクトリを使用してアプリケーションで認証を実装するにはどうすればいいですか
- 16. 私のイベントバスの実装におけるカップリングを減らすにはどうすればいいですか?
- 17. LWUITの私のリストに検索を実装するにはどうすればいいですか?
- 18. iPadにカスタムグリッドを実装するにはどうすればよいですか?
- 19. PagingAndSortingRepositoryにPostFilterを実装するにはどうすればよいですか?
- 20. クラスをActionListenerに実装するにはどうすればよいですか?
- 21. プリローダーアニメーションをウェブサイトに実装するにはどうすればよいですか?
- 22. commentsにacts_as_followerを実装するにはどうすればよいですか?
- 23. ドラッグアンドドロップをキャンバスに実装するにはどうすればよいですか?
- 24. アプリケーションでopenURLの実装を動的に変更するにはどうすればよいですか?
- 25. Prezi.comのフラッシュプレゼンテーションエディタなどのアプリケーションを実装するにはどうすればよいですか?
- 26. アプリケーションでサルテストを実行するにはどうすればいいですか?
- 27. Facebookのログインボタンを実装するにはどうすればよいですか?
- 28. javax.naming.Referenceableの実装をユニットテストするにはどうすればよいですか?
- 29. xgboostのインクリメンタルトレーニングを実装するにはどうすればよいですか?
- 30. GUIのリセットボタンを実装するにはどうすればよいですか?
ヘルプあなた自身:不適切なフォーマットのhttps://github.com/nhahtdh/PS3/blob/master/Game/GameBlock.m – nhahtdh