10

ViewPager の感度を変更する方法を知っている人はいますか?

現在、Android v4 サポート ライブラリの ViewPager を使用して、独自のフォト ビューアーを実装しています。

ただし、デフォルトのViewPagerは、指が画面に触れて非常に短い距離(おそらくわずか0.5cm)移動すると、感度が高すぎます。次に、ViewPager が切り替えられて、次/前の写真ビューにスクロールします。

ViewPager のデフォルトの動作を上書きして感度を下げる方法はありますか?

任意の応答に感謝します。

4

4 に答える 4

5

互換性ライブラリの src から ViewPager.java をチェックアウトしましたが、xml やセッターでそれを行う方法がないようです。ViewPager には次のようなコードがあります。

final float density = context.getResources().getDisplayMetrics().density;
mFlingDistance = (int) (MIN_DISTANCE_FOR_FLING * density);
mCloseEnough = (int) (CLOSE_ENOUGH * density);
mDefaultGutterSize = (int) (DEFAULT_GUTTER_SIZE * density);

ご覧のとおり、飛距離などの決定には内部定数を使用しています。

良いニュースは次のとおりです: ViewPager (ここではそのライセンスを考慮する必要があります) をコードにコピーし、それを拡張して、たとえば xml 属性から距離を取得することができます。

于 2012-08-27T03:02:23.903 に答える