[Android] "びゅーぶいーんぶいーん"がやってきた!

| トラックバック(0) |

複数のビューページを右から左などのスワイプ操作で切り替えることができる API (※)が、

Android Compatibility package, revision 3 からサポートされました!

※API :"ViewPager" ≒ "びゅーぶいーんぶいーん"

 

少しわかりにくいので、身近な Android アプリケーションで例えると、

以下のアプリケーションのようなビュー切り替え機能です(伝わるかな^^;)。

  • 標準の Launcher (ホーム)アプリの画面(ワークスペース)切り替え
  • Google I/O アプリのスケジュール切り替え
  • Google+ アプリのストリーム切り替え
  • TweetDeck アプリのカラム切り替え

 

サンプルアプリ実行結果

Compatible package に含まれる、Support v4 Demos というサンプルアプリの実行結果。

Fragment0.png →  Fragment0-0-1.png →  Fragment0-1-1.png →  Fragment1.png

 

サンプルアプリのソース

com.example.android.supportv4.app.FragmentPagerSupport

 

サンプルアプリのソースがわかりやすかったのですが、

フラグメントを使ってスワイプ操作に対応したビューの切り替えを実現したい場合、

ビューの切り替えをしたい領域に android.support.v4.view.ViewPager を配置・作成、

ページとフラグメントの紐づけを行う android.support.v4.app.FragmentPagerAdapter を作成し、

ViewPager インスタンスに FragmentPagerAdapter のインスタンスをセットするだけです。

 

興味のある方は、Compatibility package, revision 3 の以下のソースコードを読んでみると面白いと思います。

ViewPager は、ViewGroup で実現されていました。

  • /extras/android/compatibility/v4/src/java/android/support/v4/view/PagerAdapter.java
  • /extras/android/compatibility/v4/src/java/android/support/v4/view/ViewPager.java
  • /extras/android/compatibility/v4/src/java/android/support/v4/app/FragmentPagerAdapter.java
  • /extras/android/compatibility/v4/src/java/android/support/v4/app/FragmentStatePagerAdapter.java

 

トラックバック(0)

トラックバックURL: http://mt.adakoda.com/mt-tb.cgi/545

2016年8月

  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31