[開発] ViewPager2アンドリュースのクラシック入門チュートリアル

[はじめに]

RecyclerViewであなた項目がViewPagerを使用している場合ViewPagerは、同じインターフェイス上で同じIDを2つ持つことはできませんので、ViewPager上のピット数回以前のプロジェクトを使用して、あなたはそれ以外の場合は、スリップをリードします、絶対に不可解な問題を持っていますそして、メモリの問題、使用ViewPagerネストされた内部項目リストビューは、動的が必要または動的にViewPager割当IDのインスタンスを生成します。

 

Googleはまた、最近(安定版は1.0.0です)ViewPager2の正式版をリリースし、あなたが今、安心することができViewPager2その本番環境用:

依存関係{ 
    実装 "androidx.viewpager2:viewpager2:1.0.0" 
}

 

もちろんViewPager2は、ライブラリandroidxパッケージですが、また次のアドレスを特に参照して、アセンブリJetpackのライブラリのメンバーです。

https://developer.android.google.cn/jetpack/androidx/releases/viewpager2

 


 

最も簡単な使用[]

ViewPager2内部使用RecyclerViewは、最も簡単な使い方はすぐにViewPager2のデフォルトの水平方向のスクロール以下のアダプタを使用することができます設定することです:

        ViewPager2 uiVisitorPager2 = mRootView.findViewById(R.id.uiVisitorPager2)。
        uiVisitorPager2.setAdapter(新しいRecyclerView.Adapter(){ 
            @NonNull 
            @Override 
            公共RecyclerView.ViewHolder onCreateViewHolder(@NonNullのViewGroup親、int型ビュータイプ){ 
                ビュー項目= View.inflate(parent.getContext()、R.layout.face_item_domicile、ヌル);  ViewGroup.LayoutParams LP =新しいViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT、ViewGroup.LayoutParams.MATCH_PARENT);  item.setLayoutParams(LP);  RecyclerView.ViewHolder VH =新しいですRecyclerView.ViewHolder(アイテム){}。リターンVH; } @Override公共ボイドonBindViewHolder(@NonNull RecyclerView.ViewHolderホルダ、INT 位置){} @Override公共のint getItemCount(){リターン10 }})。

 

上記手動で設定LayoutParamsを指摘し、そうでない場合は、スローされます。

 java.lang.IllegalStateException:ページ全体ViewPager2(使用match_parent)を入力する必要があります

 


 

[垂直スクロール機能]

方位指定方向:ViewPager2横方向の支持と垂直スクロール、XMLだけでアンドロイドを介し:

<androidx.viewpager.widget.ViewPager 
    アンドロイド:ID = "@ + ID / uiVisitorPager" 
    アンドロイド:オリエンテーション= "垂直" 
    アンドロイド:layout_width = "match_parent" 
    アンドロイド:layout_height = "1DP" 
    アプリ:layout_constraintLeft_toLeftOf = "親" 
    アプリ:layout_constraintRight_toRightOf = "親" 
    アプリ:layout_constraintTop_toBottomOf = "ID / uiTopTitle @">

 


 

【】ViewPager2.PageTransformer

ViewPager2もViewPager既存PageTransformerをサポートし、あなたが簡単に前のPageTransformerを再利用することができますので、全く同じ方法を使用します。

 

ViewPager2内で定義ViewPager2.PageTransformerはインターフェース、インターフェースメソッドとViewPager PageTransformer同一です。

 

公共の抽象無効transformPage(閲覧ページ、フロート位置)

おすすめ

転載: www.cnblogs.com/nicojerry/p/12174003.html
おすすめ