問題タブ [android-touch-event]

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 投票する
2 に答える
1963 参照

android - Android キャンバスにズーム効果を適用した後の間違ったスケール位置

まず第一に、これはもともとここで尋ねられたフォローアップの質問です。Pan、Zoom and Scale a custom View for Canvas drawing in Android

まだ答えがなかったので、android-gesture-detectorsを使用して最終的に問題を解決しました

ズーム/スケール ジェスチャを適用した後、キャンバスの描画座標がまだ古い位置 (ズームを適用する前) を指しており、まったく同じタッチ座標で描画されていないことがわかりました。基本的に、キャンバスをスケーリングまたはドラッグした後、正しいキャンバス座標を取得できません。

ズームする前に、

ここに画像の説明を入力

ズームアウトした後、タッチ ポイントは前の場所に描画されます。現在のタッチ位置に描画したいのですが、

ここに画像の説明を入力

サンプルコード、

PS: MoveGestureDetector()ScaleGestureDetector () 、 RotateGestureDetector ( )は、 android-gesture-detectorsから継承されたカスタム クラスです。

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

android - popupwindow から子リストビューに touchevent をディスパッチする方法

ユーザーが編集テキストを入力したときにいくつかの提案を表示するために、PopupWindow を使用しています。ポップアップウィンドウ内に、提案を表示するリストビューがあります。ListpopupWindow がキーボードを覆っていたため、ポップアップが表示されている間はユーザーが入力を続けることができなかったため、使用できませんでした。

ユーザーが入力を続けるためには setFocusable(false);、ポップアップウィンドウで入力する必要があります。これに関する問題は、ウィンドウがフォーカス可能でないため、提案をクリックできないことです。フォーカス可能にすると、編集テキストからポップアップ ウィンドウにフォーカスが移動するため、ユーザーは入力を続けることができなくなります。したがって、ポップアップウィンドウにタッチリスナーを設定し、プログラムでクリックを実行する必要があります。

PopupWindow touchevent をインターセプトしてリストビュー項目をクリックするにはどうすればよいですか? 以下のコード スニペットを使用してみましたが、うまくいきませんでした

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

android - OnClickListener はビューの倍率を考慮していますか?

行の子CustomLayoutを拡張して含むビューがありTableLayout、それぞれにセルが含まれています(個々のセルには があります)。にも存在し、X/Y 軸でのスクロール/ドラッグをサポートします。スケーリング係数が 1 (スケーリングなし) の場合、すべてがうまく機能します。LinearLayoutRelativeLayoutOnClickListenerCustomLayoutScaleGestureDetector

問題は、各セルがのOnClickListenerスケーリング係数を考慮していないように見えCustomLayout、その後、それが独自のセルスケーリングであることです。したがって、ズームが 2 倍で、現在大きくなったセルをクリックすると、実際には、以前のズーム レベルからの別の小さいセルのタッチ ターゲットをクリックしたことになります。

これが仕様によるものかどうかはわかりません (この問題に関するドキュメントをいくつか見つけようとしましたが、何も見つかりませんでした)。この件に関する意見/アイデアはありますか?タッチ イベントClickListenerをリッスンし、CustomLayoutタッチ イベントの位置を現在拡大されている/より大きなセルにマッピングすることにより、手動で実装する可能性が常にあることを知っています。OnClickListenerしかし、より簡単でクリーンなアプローチのためにデフォルトを使用できるかどうかを知りたかった.

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

android - Android Espresso タッチ イベントを実行するにはどうすればよいですか

ACTION_DOWNやなどの単純なタッチ イベントでビューをテストするにはどうすればよいACTION_MOVEですか?

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

android - Android - ラジオ ボタンの ontouch() メソッドが true に設定されている場合

Androidがタッチイベントを処理する方法について頭を悩ませようとしていますが、これで混乱しました。私の知る限り、onTouch()ビュー要素のイベントが true に設定されている場合、要素がそのタッチ イベントを処理する準備ができていることを意味します。つまり、タッチ イベントを消費します。
その場合、以下のコード スニペットで、実行後、ロックが true を返したときに、ラジオ グループの選択を変更できませんでし
た仕事。誰かが私のためにそれを適切に要約してもらえますか. また、イベントのために戻ってきたために新しいアイテムを選択できなかった理由を説明しtrueonTouch()ください.

アクティビティの XML ファイル

このコード スニペットは、 Dave SmithによるCustom Touch Examplesというプロジェクトからのものであることに注意してください。

0 投票する
4 に答える
753 参照

android - ACTION_POINTER_DOWN イベントをプログラムでトリガーする

on two fingers down数ミリ秒間イベントをトリガーしたい。

このコードを使用して、単純なタッチ イベントをトリガーできます。

ACTION_POINTER_DOWN に対して同じことをしようとしても、何も起こりません。これが私のコードです:

ユーザーが2本の指を下に置き、数ミリ秒間そこに指を置いたときに呼び出される同じイベントをトリガーしたいと思います。

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

android-touch-event - アプリの外部と内部のタッチのタッチ座標を取得するにはどうすればよいですか?

アプリの内部と外部の両方で、クリックされた任意の部分の画面座標を取得する必要があるアプリを構築しています。可能であれば、タッチ イベントに関与するポインターの数に関する情報を提供することもできます。私のデバイスはルート化されています。

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

android - BaseActivity 内のフラグメントのリソースまたはビューにアクセスできますか

4 つのフラグメントを膨らませたベース アクティビティがあります。すべてのフラグメントで使用する必要があるいくつかのメソッドがありますが、それは望ましくありません。メソッドをすべてのフラグメントに再利用できるように、基本アクティビティ内にそのメソッドを実装したいと考えています。フラグメントのすべての親レイアウトの onTouchListener イベントを使用したい。私はxml onClickメソッドを介してこれを達成でき、baseActivityでこのメソッドを呼び出すことができますが、onTouchイベントを使用したいのですが、そのメソッドはレイアウトxmlでは利用できません。したがって、基本アクティビティのフラグメント レイアウトからリソースにアクセスし、baseActivity に TouchEvent を実装したいだけです。

出来ますか。??どんな助けでも大歓迎です..ありがとう!

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

android - Android の速度トラッカーが間違った速度値を示している

指を使って画面上を自由に移動するFacebook チャット ヘッドのような要素を持つアプリケーションを作成しています。ACTION_UP が呼び出されたときにビューの最終的な位置を決定できるように、ビューの速度を調べようとしています。問題は、速度トラッカーによって返される速度が正しい場合もありますが、半分は間違っていることです。

多くの場合、チャット ヘッドを右に投げようとすると、x 速度が負になり、これは異常な動作です。そこで、電話の開発者設定に入り、ポインターの位置オプションを有効にしました。電話の上部、ステータス バーの上部に表示される「Xv」値は常に正しいのですが、androidVelocityTracker で測定された X 速度の出力ログは依然として不安定です。

これが私のコードです:

間違いか何かをしている場合はお知らせください。または、正しい速度を取得する他の方法はありますか。

前もって感謝します!