問題タブ [ontouch]
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.
android - キャッチされない例外で終了するスレッド (group=0x42016898)
スライド パズル ゲームを作成していますが、どこで例外が発生してアプリがクラッシュするのかわかりません。Logcat を使用すると、onTouch() を複数回呼び出した後にクラッシュすることがわかりました。以下はコードです。
Logcatで得た結果は次のとおりです
java - onTouch と onClick のボタン
移動できるように、onTouch を使用しているボタンがあります。しかし、ボタンは onClick でコンテンツを読み込めません。それを実現する方法は?
android - Android 開発: ontouch リスナーが非アクティブな場合にアプリが遅れる
これに似た質問をオンラインで見つけることができなかったので、質問を送信しようと思いました。ほとんどの場合、タッチ イベント中に遅延が発生する可能性があるという逆の問題を抱えているようですが、私は正反対のことを確認しています。私はエアホッケーゲームを作成しており、各フレームは現在のパラメーターに基づいてピースが移動し、バックグラウンドでオーバーライド ontouch リスナーがモーションイベントを探している間にゲームが再描画されます。問題は、指が画面に触れておらず、アニメーションの部分を見ているだけの場合に顕著な遅延があることですが、何らかの形のモーション イベントが発生している限り、ontouch が呼び出されている場合、アニメーションはスムーズです。これがなぜなのか、まったく理解できませんが、
すべてがどのように構成されているかについて、もう少し背景を説明します。クラス全体は Main.java にあり、ここで作成され、Context ビューを要求します。ゲーム クラスは ImageView の拡張です。ゲーム クラスには @override OnTouchEvent があり、これには、どの状態とどのモーション イベントに応じて何を行うかについてのすべての定義があります。このクラスには draw メソッドもあり、メソッドの最後で h.postDelayed(r, FRAME_RATE); を呼び出します。ここで、r は、invalidate(); を呼び出すだけの @Override public void run() を持つ Runnable です。h は、クラスで初期化される単なるハンドラーです。そのため、ゲームが描画されるたびに、10ms の FRAME_RATE 経過時間後に無効化が呼び出され、ゲームに再描画を指示します。ゲームのすべての移動関数も draw メソッドから呼び出されます。OnTouch はこのプロセスと並行して行われているため、OnTouch が呼び出されている場合、真かどうかを確認するよりもスムーズになるのはなぜですか。すべて直感に反しているように見えますが、論理的な理由があると確信しています。最後に、ラグ タイムはシステム クロックを使用して測定可能であり、正確に呼び出された場所に基づいて時間に依存していました。タッチ イベントが発生していないときに、ゲーム移動機能間の通過時間が増加したことを示しています。
実際のコード コンテキストがあまりない長い応答で申し訳ありませんが、十分に説明できることを願っています。コード自体はかなり長いので、それを投稿するのに役立つとは思いませんでしたが、必要に応じて、視覚化された階層を使用して疑似コードを再投稿することでよりうまくいくことができます. この問題に関するご助言とご提案をありがとうございます。なぜそれが起こっているのかを理解できることは素晴らしいことです。
これがコードです。元の投稿を編集して投稿する必要があることに気づきませんでした。
android - Android:ユーザーが最後のアクティビティからまだ画面に触れているかどうかを知る方法
ユーザーがそれに触れると、前のものと同じ場所にある別のimageViewで別のアクティビティを開きます。質問は、ユーザーがまだimageViewに触れていて、指を離したことがないかどうかを知る必要があります最後のアクティビティ以降の画面の変化 (新しい imageView を指で動かせるようにするため)
タッチイベントをリッスンしようとしましたが、ビューがレンダリングされた後にユーザーがimageViewに触れ始めたときにのみタッチイベントが発生するため、指を画面から離して再度imageViewに触れ始める必要があります。これを修正したいこの質問。
私は AndroidAnnotations を使用しているので、リスナー コードは次のようになります。
java - Androidで描かれたランダムな円のx、y座標を取得しようとしています
画面上にランダムな円を作成するゲームを作成しています。ランダムに作成された円は、赤または緑の値を持ちます。
私の質問は、ユーザーが円の 1 つをクリックしたときだけでなく、最終的にどの円 (赤または緑) をクリックしたかを判断できるようにしたいということです。私の主な問題は、描画される円の x と y を見つけようとすることです。
これが私のコードです:
以下のコードは機能しません
ここにログキャットがあります
android - OnTouch イベントを使用して、さまざまな図形を選択してキャンバスに配置します
私はAndroidプログラミングが初めてです私のプロジェクトレイアウトでは、作成する必要があります
- グリッド レイアウトのカラー パレット (いくつかのボタンを配置し、色の背景を設定します)。
- 形状(ボタンでもある三角形、正方形、円)は線形レイアウトです
- これら 2 つの隣には、ユーザーが図形を描画できる相対レイアウトがあります。
ユーザーが形状の 1 つに触れてから、相対的なレイアウト (形状の隣にある) に触れると、その特定の形状が描画され、色も同様に描画されます。たとえば、ユーザーが円の形をタッチしてから画面をタッチすると、ユーザーがタッチしたポイントに円が描画されます。
2 つの異なるクラスで 2 つのタッチ イベントを作成することができました。つまり、1 つは形状を選択するため、もう 1 つは形状をレイアウトに配置するためです。
これら2つのクラスを組み合わせる方法がわかりません。
このプロジェクトにどのようにアプローチすればよいか、誰か教えてください。どこで形状を作成する必要がありますか (形状ごとに個別のクラスを作成する必要がありますonDraw()
)? でシェイプを作成した場合、onDraw()
どのように呼び出すことができonTouch()
ますか?
どんな助けでも素晴らしいでしょう。前もって感謝します。
きちんと説明できていれば幸いです。申し訳ありませんが、英語が苦手で、このフォーラムに投稿するのは初めてです。