Android ViewPager 的使用

学向勤中得,萤窗万卷书。这篇文章主要讲述Android ViewPager 的使用相关的知识,希望能为你提供帮助。
Android 中使用ViewPager【Android ViewPager 的使用】学习自:博客园部分博客
Overviewandroid中ViewPager的效果还是非常好用的,他的效果就是滑动切换view的效果。接下来让我们看一下如何使用我们的ViewPager。
编写适配器首先我们创建一个适配器,并且我们需要继承PagerAdapter.接着我们看一下源码。

public class ViewPageAdapter extends PagerAdapter { List< View> mList = new ArrayList< > (); public ViewPageAdapter(List< View> mList) { this.mList = mList; }/** * @ClassName:ViewPageAdapter - 返回List数量 * @author:CaoJiaHao * @Param: **/ @Override public int getCount() { return mList.size(); }/** * @ClassName:ViewPageAdapter - 将窗体进行绑定 * @author:CaoJiaHao * @Param: **/ @Override public boolean isViewFromObject(@NonNull View view, @NonNull Object object) { return view == object; }/** *@ClassName:ViewPageAdapter - 销毁View的过程 *@author:CaoJiaHao *@Param: **/ @Override public void destroyItem(@NonNull ViewGroup container, int position, @NonNull Object object) { container.removeView(mList.get(position)); }/** *@ClassName:ViewPageAdapter - 这个为显示的View *@author:CaoJiaHao *@Param: **/ @NonNull @Override public Object instantiateItem(@NonNull ViewGroup container, int position) { container.addView(mList.get(position)); return mList.get(position); } }

接着让我们来分析一下,我们的代码。
Adapter源码分析
在这里我们的Items 都是通过集合去添加的,我们创建了一个List< View> 。并且通过适配器来进行items 的添加。
那么我们的适配器中都有些什么呢。
适配器的构造函数,参数为List< View>
然后还有GetCount(); ,isViewFormObject,destoryItem,instantiateItem.
这部分内容大概就是我们基础使用ViewPager所需要使用到的适配器了。
现在是适配器使用完成了。让我们看一下如何去使用我ViewPager
ViewPager 的使用过程 我们先看一下我们的布局代码吧
< androidx.constraintlayout.widget.ConstraintLayout 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:padding="10dp" tools:context=".MainActivity"> < androidx.viewpager.widget.ViewPager android:id="@+id/ViewPager1" android:layout_width="match_parent" android:layout_height="250dp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> < /androidx.constraintlayout.widget.ConstraintLayout>

布局文件十分的简单。在该布局文件中,我们只创建了一个ViewPager
接着让我们看一下业务代码吧。
public class MainActivity extends AppCompatActivity { private List< View> viewList = new ArrayList< > (); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); View view1= new View(this); view1.setBackgroundColor(Color.RED); View view2= new View(this); view2.setBackgroundColor(Color.GREEN); View view3= new View(this); view3.setBackgroundColor(Color.BLACK); View view4= new View(this); view4.setBackgroundColor(Color.YELLOW); viewList.add(view1); viewList.add(view2); viewList.add(view3); viewList.add(view4); ViewPager viewPager = findViewById(R.id.ViewPager1); viewPager.setAdapter(new ViewPageAdapter(viewList)); } }

这些就是我们的业务逻辑,我们来看一下他的内容:
先是创建了4个View。并且将他添加到我们的List中,然后初始换我们的ViewPager并且将它进行绑定。
这样我们=所有的过程就已经完成了。
运行效果现在我们的代码已经全部完成了。那么让我们看一下我的运行效果吧。
Android ViewPager 的使用

文章图片


    推荐阅读