ViewPagerをつかってみた。

ViewPagerをつかって下のような画面をつくってみました。

これの使い方および注意を書いていきます。

f:id:pgpg-sou:20131031091655p:plain       f:id:pgpg-sou:20131031092030p:plain      f:id:pgpg-sou:20131031091807p:plain

使い方

xmlファイルへの定義

ViewPagerの定義は以下のようになります。

スワイプして遷移する画面を2つ定義します。

< res/layout/activity_name.xml>

< res/layout/activity_event.xml>

javaファイルへの定義

PageAdapterを実装したカスタムクラスをつくります。下にそれぞれ最低限必要なメソッドとその説明を書きます。

  • isViewFromObject()
    ObjectにViewがはいってるかどうか判断する
  • getCount()
    ViewPager に登録する全アイテム数を返す。
  • instantiateItem()
    アイテムを追加するときに呼ばれる。このメソッド内で View をコンテナに追加する。
  • destroyItem()
    アイテムを削除するときに呼ばれる。このメソッド内で View の削除をおこなう。

instantiateItem()の中に遷移する画面の設定を行います。

 

使用上の注意

  • instantiateItemメソッドの返り値を適当にしてしまうと動かなくなる。
  • 表示されるレイアウトの順番はpagesに格納されているレイアウト順である。

補足

今回は画面すべてをページ送りしましたが下のようなレイアウトにすることで赤枠の部分を固定し、青枠のところだけページ送りすることができます。

f:id:pgpg-sou:20131031125029p:plain

ソースはこちら

https://github.com/pgpg-sou/sampleViewPager