コンテキストメニューを表示するコードを挿入すると、メニューは静止した長押しだけでなく最後にも表示されますドラッグの。Android:ドラッグが長押しとして解釈されないようにするには
これを防ぐには、ScrollInProgressフラグをViewに追加し、onCreateContextMenu(...)メソッドの先頭でこのフラグをチェックし、フラグをバイパスしてフラグがセットされているかどうかを確認しますコンテキストメニューに項目を追加します。
しかし、画面をドラッグしたときにコンテキストメニューの作成を防ぐ簡単な方法があるのだろうかと思います。
いくつかのコードは表示されません。ドラッグ/ロングクリックの検出方法を教えてください。 – Falmarri
Falmarriへの回答:SimpleOnGestureListenerを継承するクラスMyGestureDetectorを定義しました。このクラス内では、onScroll(...)メソッドがオーバーライドされ、scrollInProgressフラグをtrueに設定します。アプリの主な活動の中で、 'gestureDetector = new GestureDetector(new MyGestureDetector());'という行があります。これがスクロール(ドラッグ)の開始を検出する方法です。長いプレスは、メインアクティビティのonCreate(...)にコマンド 'registerForContextMenu(myView);を挿入し、' onCreateContextMenu'と 'onContextItemSelected'のコードを書くだけで検出されます。 – prepbgg
私はこの記述をまったく記入する必要があるかどうか教えてください。 – prepbgg