昨天项目刚上线,今天产品又要改需求...........
利用一点空隙时间整理了一下ViewPager2的使用
效果图
由于当前项目中用的懒加载 LazyViewPager 是别人开源的,时间也很久了并且现在使用发现了一些bug,配合 TabLayout使用,在页面初始化后,你从第一页点到第三页或者第四页有时候会出现当前页面加载空白问题!由于前段时间项目紧急就一直没有修改,现在刚上线就赶紧修改一下。
网上一搜都是自定义LazyFragment ,通过 getUserVisibleHint() 获取是否可见来封装处理,自己实现数据的懒加载,这样完全没问题,但是咱不是懒啊,听说新出来一个 ViewPager2,就新建来一个项目尝试一下。
新建项目是 AndroidX 项目,不是AndroidX 请绕行。
建好项目后 导入依赖
//ViewPager2的依赖
implementation 'androidx.viewpager2:viewpager2:1.0.0-alpha01'
//配合 TabLayout使用 所用到的相关辅助类
implementation "com.google.android.material:material:1.1.0"
顺便说一下我的 minSdkVersion 是22的
编译后开始上手敲代码
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<com.google.android.material.tabs.TabLayout
android:id