2

週を移動できる Android カレンダーの週表示のようなものや、会話を切り替えることができる Talk アプリのようなものを実装したいと考えています。つまり、ビューをスワイプするだけでなく、ビューをドラッグできるようにしたいと考えています。

私ができると思われる唯一のことは、スワイプアクションの後にビューを切り替えることです(スライドアニメーションを使用)。私が言及した 2 つの例では、ビューは実際にドラッグされます。つまり、画面上で指を動かすとアニメーションが表示されます。

私はカレンダーのソースを調べてきましたが、関連するクラスが非常に大きいため、頭も尻尾もできません。

誰かがこのようなことをしたことがありますか、またはどこかで利用できる (比較的簡潔な) ソースはありますか?

乾杯。

4

2 に答える 2

1

私はカレンダーコードを見てきましたが、これは私が理解したものです:

には、2 つので構成される がWeekActivity含まれています。ユーザーがスクロール イベントを生成すると、 によってイベントが検出され、スクロールの X 座標が取得されます。現在のビューが無効になり、CalendarView の関数が呼び出されます (メソッドは、グリッドとイベントが描画される場所です)。ViewSwitcherCalendarViewCalendarActivityonDraw()onDraw()

ではonDraw()、キャンバスは X ( canvas.translate(x))を使用して変換さonDraw()れ、ViewSwitcher の他のビューのメソッドが呼び出されて残りのコンテンツが埋められます。


アプリで同じ動作をしたかったのですが、代わりにギャラリーを使用し、必要に応じて変更することにしました。

于 2011-05-06T00:30:02.290 に答える
1

Android 互換パッケージのViewPagerを使用する必要があります。

ここから始めるのがよいでしょうこれはまさにあなたが望むことをします。

于 2012-02-13T07:37:56.917 に答える