問題タブ [uigesturerecognizer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
iphone - MPMoviePlayerViewControllerのUIGestureRecognizer
誰かが同様の問題に遭遇し、もちろん、適切な、またはそれほど適切ではない(しかし機能している)解決策/回避策を見つけたのではないかと思います。
MPMoviePlayerViewControllerを使用していて、スワイプジェスチャ認識機能をMPMoviePlayerViewControllersビューに追加しようとしています。
moviePlayerViewController = [[MPMoviePlayerViewController alloc] initWithContentURL:[NSURL URLWithString:currentChannel.StreamURI]];
[moviePlayerViewController.moviePlayer setControlStyle:MPMovieControlStyleNone];
moviePlayerViewController.moviePlayer.movieSourceType = MPMovieSourceTypeStreaming;
moviePlayerViewController.moviePlayer.shouldAutoplay = YES;
[moviePlayerViewController.moviePlayer setScalingMode:MPMovieScalingModeAspectFit];UISwipeGestureRecognizer * swipeGestureRight = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(previousChannel)];
swipeGestureRight.direction = UISwipeGestureRecognizerDirectionRight;
[myMoviePlayerViewController.view addGestureRecognizer:swipeGestureRight];
[self.view addSubview:moviePlayerViewController.view];
とにかく、それは「一種の動作」ですが、実行中のムービープレーヤーインスタンス(シミュレーターまたはデバイスの両方)でジェスチャーを実行して全体をテストすると、アプリがクラッシュし、コンソールの状態が表示されます
そのトピックについて何か考えを持っている人はいますか?
iphone - UISwipeGestureRecognizer スワイプ距離
スワイプが認識されるまでに移動する距離を長くする簡単な方法があるかどうかは考えられません。デフォルトは本当に短いようです。それはタップ以上のものですが、かろうじてです。この距離をオーバーライドするには、カスタム ジェスチャ レコグナイザーを作成する必要がありますか?
ありがとう。
iphone - UIPopoverControllerから他のUIViewへのドラッグアンドドロップ
UIPopoverController
UIViewを後ろにドラッグアンドドロップして実装するにはどうすればよいですかUIView
。
これは、Pagesが挿入メディアポップオーバーで提供する機能であり、図形をからドラッグUIPopoverController
してメインドキュメントにドロップできます。
私は実際に鍋UIGestureRecognizers
とそれらが実装される場所と混同しています。
ありがとう、
Umer
uigesturerecognizer - 円形の UIGestureRecognizer を作成する
iPhone / iPad アプリケーションでジョグ ホイールを作成しようとしています。UIGestureRecognizer をサブクラス化して、独自のレコグナイザーを記述できることはわかっています。おそらくパンジェスチャと組み合わせて、円運動を検出するものを作成する方法(主にその背後にある数学)を知っている人はいますか?
ありがとう
objective-c - CALayerの[ジェスチャー]をタッチします
CALayerで描画を行っていますが、ユーザーが描画のさまざまな部分をシングルタップして応答をトリガーできるようにしたいと考えています。ジェスチャレコグナイザーを調べてみましたが、UIViewに関連付ける必要があるようです。CALayersを使用して目的の動作を取得する方法はありますか?
iphone - 2つのクラスで同時にUITapGestureRecognizer呼び出しを受信することは可能ですか?
ユーザーが画面をシングルタップしたときに、2つのクラス(スーパービューとフルスクリーンサブビュー)のアクションを呼び出したいと思います。ただし、UITapGestureRecognizerをサブビューに追加すると、スーパービューに追加されたものがオーバーライドされます。スーパービューに追加されたUITapGestureRecognizerをオーバーライドせずに、サブビューにUITapGestureRecognizerを追加することは可能ですか?もしそうなら、どうすればこれを行うことができますか?
ありがとう!
編集: メインのviewController "MyToolBerController"から、次のように別のviewControllerからサブビューを追加しています。
MyToolBerControllerにGestureRecognizerを次のように追加します。
これはすべて正常に機能しますが、ビューがタップされたときにPhotoViewControllerクラスとMyToolBerControllerクラスのメソッドを呼び出す必要があります。photoViewControllerに別のUITapGestureRecognizerを追加すると、superViewに追加されたUITapGestureRecognizerが上書きされます。
iphone - ジェスチャが終了する前に UITableViewCell の背景選択状態が反転する
コード
呼び出されたのサブクラスに呼び出されたUILongPressGestureRecognizer
ジェスチャ認識エンジンを追加するコードがいくつかあります。_recognizer
UITableViewCell
cell
-cellLongPressRecognized:
セレクターは、ジェスチャが終了したときに単純にログに記録します。
セルをタップして押したまま離すと、コンソールに 1 つのログ メッセージが表示されます。
ここまでは順調ですね。
問題
_recognizer.minimumPressDuration
問題は、テーブル セルの背景がプロパティである 1.0 秒の間だけ選択されたままになることです。
デバイス上で 1.0 秒以上指を離すと、セルの背景がUITableViewCellSelectionStyleBlue
選択スタイルから通常の不透明な選択されていない背景に戻ります。
ジェスチャ固有のコードのみがこの問題に関係していることを確認するために、-tableView:didSelectRowAtIndexPath:
テスト中に無効にしました。
質問
背景を無期限に選択したままにして、「長押し」ジェスチャが終了したときにのみ元に戻すにはどうすればよいですか?
iphone - ジェスチャレコグナイザーをリリースする必要がありますか?
ジェスチャレコグナイザーをテーブルセルに追加するとcell
、たとえば次のようになります。
ある時点でこのセルを手動で呼び出す必要があります-removeGestureRecognizer:
か、それともセルが使用されなくなったときにジェスチャレコグナイザーが削除されて解放されますか?
iphone - ピンチジェスチャがいつ終了したかを確認するにはどうすればよいですか(UIGestureRecognizer)
UIPinchGestureRecognizerがピンチジェスチャを終了したときにコールバックを取得したい。さらに、完成したジェスチャがズームインかズームアウトかを知ることは素晴らしいことです。
誰かが使用する方法を知っていますか?または行うためのアプローチ?
ありがとう!
cocoa-touch - UIGestureRecognizerがテーブルビューのスクロールをブロックする
UIGestureRecognizer
クラスのジェスチャーを追跡するためにカスタムサブクラスを使用していInfoView
ます。このクラスは、と呼ばれるカスタムサブクラスInfoView
のサブビューです。UITableViewCell
InfoCell
ルートビューにジェスチャレコグナイザーを追加しました(カスタムジェスチャレコグナイザーの目的はInfoCell
テーブル間でビューをドラッグできるようにすることであるため、画面上の他のすべての親ビューです)。これで、1つを除いて、すべてが正常に機能します。サブクラスで次のコードを使用して、ビューUIGestureRecognizer
のタッチを検出しています。InfoView
ここでの問題は、オブジェクトへのタッチがインターセプトされているため、の親ビューであるを含むInfoView
に転送されていないことです。これは、ビューをドラッグしてテーブルビューをスクロールできなくなったことを意味します。これは、カバーが全体をカバーしているため、問題になります。UITableView
InfoCell
InfoView
InfoView
InfoView
InfoCell
タッチをテーブルビューに転送してスクロールできるようにする方法はありますか?私はすでにたくさんのことを試しました:
[super touchesBegan:touches withEvent:event];
[touchView.superview.superview touchesBegan:touches withEvent:event];
(touchView.superview.superview
その親への参照を取得しますUITableView
)
しかし、これまでのところ何も機能していません。また、cancelsTouchesInView
私のプロパティUIGestureRecognizer
はに設定されてNO
いるので、タッチに干渉しません。
ヘルプをいただければ幸いです。ありがとう!