1. ホーム
  2. アンドロイド

[解決済み] GestureDetectorのonScroll()とonFling()の違いについて

2022-03-03 16:45:30

質問

とはどのような違いがあるのでしょうか? onScroll()onFling() の中に GestureDetector インターフェイスを使用していますか? イベントをプリントアウトすると、まったく同じものが表示されます。少なくとも最後の onScroll()onFling() .

私が気づいた唯一の真の違いは onScroll() はより頻繁に呼ばれますが、flingは常に1回だけです。

解決方法は?

との違い Scroll fling

オンフリング : は、ユーザーが動作の最後に指を持ち上げていることです(それが、何のために onFling が1回だけ呼び出されます)。

オンスクロール : は、ビューポート (つまり、見ているコンテンツの「ウィンドウ」) を移動する一般的な処理です。

<ブロッククオート

スクロールの用語を理解する スクロールは、Androidでは文脈によってさまざまな意味を持つ言葉です。

スクロール を移動させることです。 見ているコンテンツの「ウィンドウ」)。スクロールの方向が x軸とy軸の両方を使うことを「パンニング」といいます。サンプルアプリケーションは このクラスと一緒に インタラクティブチャート の2種類を説明します。 スクロール、ドラッグ、フライング。

  • ドラッグ は、ユーザーがドラッグしたときに発生するスクロールの一種です。 タッチスクリーン上で指を動かす。単純なドラッグは、多くの場合 GestureDetector.OnGestureListener の onScroll() をオーバーライドすることで実現できます。詳しくは ドラッグの詳細については、ドラッグとスケーリングを参照してください。

  • フライング は、ユーザーが指をドラッグしたり持ち上げたりしたときに発生するスクロールの一種です。 を素早く表示します。ユーザーが指を離した後も、一般的には スクロール(ビューポートを移動)させますが、ビューポートが移動するまで減速します。 が停止します。フリングは GestureDetector.OnGestureListenerと、スクローラーオブジェクトを使用することです。