3

を使用してロングクリックリスナーを追加しましたsetOnLongClickListener()。通常、ロング クリック リスナーは期待どおりに呼び出されます。ただし、長いクリックが中止されたように見える場合があります (ビューはハイライト表示されますが、まだ押しているにもかかわらずハイライトが解除されます)。これは、ビュー階層の他の部分 (進行状況バー、カウンター、アニメーションなど) が更新されているときに発生するようです。

長いクリック期間を中断または中止することが知られている特定のものはありますか?

4

2 に答える 2

0

これは可変幅TextView( android:layout_width="wrap_content") が原因のようです。ユーザーが長いクリックを開始した後、長いクリック時間が経過する前に、表示されるテキストが変更されることがあり、リスナーが呼び出されませんでした。ラベルの幅を変更すると、長いクリックを無効にするレイアウト パスがトリガーされます。

テキストが変更されてもビューの幅が固定されるようにすることで、この問題を解決することができました。

于 2014-07-01T17:40:28.887 に答える
-1

新しいランナブルで UI を更新できます

final Runnable runnable = new Runnable(){ public void run() { updateYourUIHere(); } };

また、 onLongClickListener はクラッシュしません

于 2014-07-01T07:44:30.430 に答える