問題タブ [touches]

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.

0 投票する
1 に答える
436 参照

background - Touches で Cocos2d を使用して背景を垂直にスクロールするにはどうすればよいですか?

私はこれを理解することにかなり近づいており、最後のビット(ロジック)が必要です。次のコードでは、背景が垂直に (タッチで) スクロールし、正しい方向 (つまり、下) に移動しています。

問題は、背景画像のコンテンツサイズを超えてもスクロールが止まらないことです...

また、スクロールをより自然に見せる方法についても考えています...つまり、しばらく続行する方法ですが、TouchesEndedが発生したときに停止するまで速度を落とします...

0 投票する
3 に答える
8601 参照

ios - UIScrollView内に配置されたUIViewで呼び出されないメソッドに触れます

私はカスタムスクロールビュー、サブクラスを持っていますUIScrollView。viewcontroller nibファイルにスクロールビューを追加し、そのクラスをCustomScrollViewに変更しました。現在、このカスタムスクロールビュー(xibから作成)がself.viewのサブビューとして追加されています。

このスクロールビューでは、xibから3つのテキストフィールドと1つのUIImageView(signImageViewという名前の)テキストフィールドが追加されています。クリックUIImageView(を追加TapGestureRecogniser)すると、signViewという名前のUIViewがカスタムスクロールビューに追加されます。ユーザーがこのビューにサインオンできるようにしたいので、クラスSignature.mと.hを作成しUIView、touchesメソッド(touchesBegan、touchesMoved、touchesEnded)をサブクラス化して実装し、signViewを次のように初期化しました。

しかし、signViewで署名を開始すると、ビューがスクロールされるため、touchsメソッドが呼び出されません。

カスタムスクロールビューの代わりにself.viewにsignViewを追加しようとしましたが、その場合、スクロールを開始してもビューは固定位置に接着されたままになります。(この場合、フレームは固定されたままです)

0 投票する
3 に答える
1354 参照

ios - touchesEnded時々呼び出されない

UIViewに次のイベントハンドラーを実装しました。

問題は、「touchesEnded」(またはtouchedCancelled)イベントを受け取らないことがあることです。私は常に「touchesBegan」イベントと「touchedMoved」イベントを受け取ります。

私はこれらのメソッドにログインしているので、期待している「touchesEnded」(またはtouchesCancelled)イベントを時々受け取らないことを100%確信しています。

multiTouchが有効になっています。

なぜこれが起こるのか誰かが知っていますか?これらのイベントを使用してサブビューを削除するため、これらのイベントを受け取ることは非常に重要です。

これに対する回避策はありますか?ビュー(またはウィンドウ)に現在のタッチを照会することは可能ですか?

0 投票する
1 に答える
2349 参照

ios - ユーザーが他の場所をタップまたはスワイプして UIView を削除するにはどうすればよいですか?

で iPhone 用のミニ ポップアップ メニューを作成しましたがUIView、ユーザーがオプションの 1 つを選択する以外の操作を行った場合に、ビューを閉じられるようにしたいと考えています。そのため、ユーザーが画面上の他の要素をタップ/スワイプ/ピンチすると、ポップアップ ビューが消えるはずです。

ただし、他の何かが起こるのを止めるジェスチャを検出したくありません...たとえば、UITableView下があり、それを上下にスワイプすると、期待どおりに移動、ミニポップアップビュー。

複数のジェスチャ認識機能を使用する必要がありますか、または touchesBegan を使用する必要がありますか、それともより良い方法がありますか?

0 投票する
1 に答える
137 参照

objective-c - タッチの(時間)解像度を改善する方法

ユーザーが手書きできるiPhoneアプリをプログラムしようとしています。touchesmoved を使用してユーザーの指を追跡していますが、1 秒間に 30 ~ 50 回の更新が行われます。素早い指の動きの場合、多くの場合、これでは滑らかな文字を得るには十分ではありません。i のような小さな文字は、多くの場合、タッチを開始してからタッチを終了するだけで、その間にポイントはありません。

touchesmoved が呼び出されるのを待たずに、NSTimer を使用して touch オブジェクトの locationInView をクエリすることで、時間 (および空間) の解像度を向上できるかどうか疑問に思っていました。これが機能するかどうかは誰にもわかりますか?

ありがとう。

0 投票する
0 に答える
3350 参照

objective-c - touchesBegan が UIView サブクラスで呼び出されない

私は GLPaint アプリを模倣しようとしていますTDPaintingViewが、 、、および. しかし、私はそれらのいずれも発砲していません。-(void)touchesBegan...touchesMovedtouchesEndedtouchesCanceled

IB 内の と IB 内の にTDAppDelegate接続されている があります。私の確実なメソッドが起動するので、初期化されていることがわかります。さらに、オブジェクトが確実にそこにあるというコンテキストからオブジェクトをログに記録することで確認できます。IBで簡単な方法でビューを変更すると(たとえば、bgを赤くする)、シミュレーターに反映されます。WindowTDPaintingViewinitWithCoderTDPaintingViewTDPaintingViewapplicationDidFinishLaunching

しかし、私のビューはタッチを受け付けず、気が狂いそうです!

ブレークポイントをオンに設定する-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)eventと、画面のどこをタッチしても停止しません。

MyTDPaintingViewにはサブビューがなく、それらの touches アクションのメソッドが明示的に定義されています。

どこが間違っていますか?

0 投票する
1 に答える
151 参照

ios - すべての主要なジェスチャーを同じビューでキャプチャ

すべての主要なジェスチャーをキャプチャする必要があります。たとえば、ユーザーが 1 回タップしたとき、2 回タップしたとき、1 本の指で 1 回タップしたとき、2 本の指で 2 回タップしたとき、ピンチしたとき、指を回転したとき、2 本の指をドラッグしたときに 1 本の指をドラッグしたときを追跡できるようにしたい.

このすべての機能を実行する方法はわかっていますが、問題は、2 つのイベントを発生させたくないということです。たとえば、ユーザーがピンチしたとき、ドラッグイベントが発生することはありません。また、ユーザーが 1 本の指をドラッグしたときに、タップ機能を起動させたくありません。

これは私がこれまでに持っているものです:

多くの実装が欠けていることはわかっていますが、書き込みパスにいることを確認するまで作業を続けたくありません。たとえば、代わりに UITapGestureRecognizer クラスを使用して、次のようにする必要があります。

0 投票する
1 に答える
164 参照

objective-c - iPadで「途中」の4本指ピンチの終わりを検出する方法

私はこの問題で立ち往生しています:4本指のピンチ(ホームボタンなど)を使用してアプリを閉じますが、「途中」でのみ実行し(アプリウィンドウが小さくなるなど)、リリースしないようにします閉じますが、開いたままです。touchesBegan私が実装したメソッドが呼び出されるようですが、touchesEndedメソッドはどの時点でも呼び出されません。また、viewDidAppearなどは呼び出されません。問題は、in にuserInteraction設定されているため、呼び出されないため、アプリが動かなくなることです。NOtouchesBegantouchesEnded

「途中」のピンチの終わりを検出する他の方法はありますか?

0 投票する
1 に答える
756 参照

xcode - マルチタッチを使用して2つの画像をドラッグする

私はイベントに触れるのはかなり新しいですが、問題があります。上記のコードを使用して、画面上に2つの画像をドラッグします。ただし、コードは機能しますが、2番目の指が画面に触れると、最初の動きが停止します。したがって、問題はマルチタッチに関連しています。また、セカンドタッチ座標の計算方法もわかりません。ビューと両方の画像でマルチタッチを有効にしました。誰かが私が各画像を各指で動かすのを手伝ってくれるなら、私は大いにいっぱいになるでしょう。前もって感謝します!

0 投票する
2 に答える
910 参照

iphone - スプライトをトレイルに追従させる方法は?

プレーヤーが線を引くと、スプライトがそれに続いて実行されるゲームを作成しています。可変配列と、うまく機能する描画メソッドがあります。しかし、スプライトを動かす方法がわかりません。さまざまなアプローチを試しましたが、イテレータを機能させることができません。

配列を反復処理することで機能するはずです。これには、以前に保存された CGPoint の場所が取り込まれます。スプライトを ccTouchedEnded に移動しようとしましたが、[toucharray objectAtIndex:0] が強調表示され、「互換性のない型 'CGPoint (別名 'struct CGPoint') のパラメーターに 'id' を渡しています」と表示されます。