みなさん、良い一日を。
カレンダー コンポーネントを作成しており、月ビューで作業しています。MonthView という名前のビューを作成しました。これのいくつかのインスタンスを ViewFlipper に追加しています。
viewFlipper = new ViewFlipper(getContext());
viewFlipper.addView(new MonthView(viewFlipper.getContext()));
viewFlipper.addView(new MonthView(viewFlipper.getContext()));
フリング ジェスチャを実装して、指を左右にスライドさせるとビューが変わるようにしました。これにより、月が周期的に更新されて表示されます。
ここで、指に触れてゆっくりとスライドさせるときに、フリング ジェスチャにスムーズな効果を与える必要があります。ViewFlipper の代わりに Slider を使用した場合も同じです。
Scroller の問題は、効果が周期的でないことです。最後のビューに到達したら、反対方向にスライドする必要があります。
ViewFlipper にスクロールのような効果を与える方法、または Scroller を周期的にする方法を見つけるのを手伝ってくれる人が必要です。
前もって感謝します。
追加コメント:
2 つのビューを持つ ViewFlipper を既に実装しています。SimpleOnGestureListener.onFling(...) メソッドを使用してビューを更新すると、次のような動作が得られます。
本のページをめくって次のページを読むように、常に右から左にスライドしていると想像してください。また、めくった後に表示されるビューのヘッダーにキャプションがあると想像してください。
ビュー # 0 --> キャプション: 2011 年 1 月
ビュー # 1 --> キャプション: 2011 年 2 月
ビュー # 0 --> キャプション: 2011 年 3 月
ビュー # 1 --> キャプション: 2011 年 4 月
ビュー # 0 --> キャプション: 2011 年 5 月
この時点で左から右にスライドすると、結果は次のようになります。
ビュー # 1 --> キャプション: 2011 年 4 月
ビュー # 0 --> キャプション: 2011 年 3 月
周期的に前後に移動できる機能により、ユーザーは無限のビューを持っているように見えますが、いくつかしか使用しないのは ViewFlipper の特徴であり、それは私が失うことができないものです。そのため、持っているものを失うことなくクールなスクロール効果を追加する方法が必要です。
ありがとう。