1.在布局文件里加入
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center" >
2.加载要显示的页卡
LayoutInflater lf = getLayoutInflater().from(this);
view1 = lf.inflate(R.layout.layout1, null);
view2 = lf.inflate(R.layout.layout2, null);
viewList = new ArrayList<View>();
viewList.add(view1);
viewList.add(view2);
3.重写PagerAdapter
public class MyViewPagerAdapter extends PagerAdapter{
private List<View> mListViews;
public MyViewPagerAdapter(List<View> mListViews){
this.mListViews = mListViews;
}
@Override
Public void destroyItem(ViewGroup container, int position, Object
object) {
container.removeView(mListViews.get(positin);//删除页卡
}
@Override
Public Object instantiateItem(ViewGroupcontainer, int position) {
//这个方法用来实例化页卡
container.addView(mListViews.get(position), 0); //添加页卡
return mListViews.get(position);
}
@Override
public int getCount() {
return mListViews.size();//返回页卡的数量
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
return arg0==arg1;//官方提示这样写
}
}
mViewPager=(ViewPager)this.findViewById(R.id.viewpager);
mViewPager.setAdapter(MyViewPagerAdapter);
mTextName01.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v){
mViewPager.setCurrentItem(LEFT_PAGE);
}
});
mTextName02.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
mViewPager.setCurrentItem(RIGHT_PAGE);
}
});
mViewPager.setOnPageChangeListener(newOnPageChangeListener(){
//这个方法会在屏幕滚动过程中不断被调用,有三个参数,第一个arg0和当前页面
index是一致的;arg1是当前页面的滑动比例,如果页面向右翻动,这个值不断变大,
最 后在趋近1的情况后突变为0;如果页面向左翻动,这个值不断变小,最后变为0。
arg2是当前页面滑动像素,变化情况和arg1一致。
@Override
public void onPageScrolled(int arg0, float arg1, int arg2){}
//这个方法在手指操作屏幕的时候发生变化,有三个值:0(end),1 ( press ),
2 ( up )。
@Override
public void onPageScrollStateChanged(int arg0){}
//这个方法有一个参数arg0,代表那个页面被选中。
@Override
public void onPageSelected(int arg0){
switch (arg0){
case 0:{
mTextName01.setSelected(true);
mTextName02.setSelected(false);
}
break;
case 1:{
mTextName01.setSelected(false);
mTextName02.setSelected(true);
}
break;
default:
break;
}
}
});
这三个方法的执行顺序为:当用手指拖动翻页时,最先执行一遍 onPageScrollStateChange(1),然后不断执行onPageScrolled,放手指的时候,直接
立即执行一次onPageScrollStateChanged(2),然后立即执行一次onPageSelected,
然后再不断执行onPageScrollStateChanged,最后执行一次
onPageScrollStateChaged(0)。
实现左右的页面滑动,往ViewPager中添加一些View视图或者Fragment.
分享到:
相关推荐
**Android ViewPager 应用详解** ViewPager 是 Android 平台上一个强大的视图组件,它允许用户通过左右滑动来浏览多个页面,通常用于实现平滑的水平滚动效果。在本示例中,我们将会探讨如何利用 ViewPager 实现三种...
在实际开发中,将Fragment与ViewPager结合使用是常见的做法,例如创建一个包含多个内容页签的应用。然而,一个常见问题是:当用户在ViewPager中切换Fragment后,已经显示过的Fragment可能不会自动重绘。这个问题可能...
在本教程中,我们将探讨如何在Android Studio中实现一个简单的ViewPager应用。 首先,我们需要在项目的布局XML文件中添加ViewPager组件。在`activity_main.xml`文件中,可以这样定义: ```xml <androidx.viewpager...
本篇文章将深入探讨如何在实际项目中实现一个简单的ViewPager应用。 首先,我们需要在项目中添加对`android.support.v4`库的依赖。在`build.gradle`文件中,确保有以下依赖项: ```groovy dependencies { ...
通过以上步骤,你可以实现一个基本的ViewPager应用,包括欢迎界面和主界面的切换。在实际开发中,可以根据需求进一步优化和扩展。记住,理解并熟练掌握ViewPager的使用,对于构建动态、流畅的用户界面至关重要。
至此,一个简单的五页面滑动切换的ViewPager应用就已经完成了。用户可以通过左右滑动在五个页面之间自由切换。注意,为了提高用户体验,通常我们还会添加一些额外的优化,比如设置指示器、添加页面滑动动画等。在...
这样,我们就可以实现一个基本的ViewPager应用,它能够展示多个页面,并可选地显示带有标题的TabLayout。当然,ViewPager还有许多高级用法,比如使用`FragmentStatePagerAdapter`优化内存管理、自定义滑动动画、设置...
为了创建一个完整的ViewPager应用,开发者需要执行以下步骤: 1. 添加ViewPager到布局文件:在XML布局中添加`<androidx.viewpager.widget.ViewPager>`标签,并设置相应的属性。 2. 创建PagerAdapter子类:根据需求...
总的来说,IconTabPageIndicator为Android开发者提供了一个高效且美观的工具,帮助他们构建出带有图标文字导航的ViewPager应用,增强了用户的交互体验。通过学习和利用这个开源库,开发者可以节省时间,专注于应用的...
在这个"简易ViewPager应用"中,我们将探讨`ViewPager`的基本使用方法、相关适配器的实现以及如何自定义其行为。 首先,`ViewPager`的核心功能是展示一系列的页面,并且可以左右滑动切换这些页面。在Android布局文件...
在"ViewPagerDemo"这个项目中,我们可以看到一个简单的ViewPager应用实例。开发者可能创建了一个名为`ViewPaperDemo`的Activity或Fragment,里面包含一个ViewPager实例。适配器可能是自定义的,扩展自`PagerAdapter`...
这个"ViewPager小Demo"将涵盖上述知识点,并通过实际代码演示如何创建一个简单的ViewPager应用,帮助开发者快速上手并理解其工作原理。通过实践,你将能够灵活运用ViewPager来构建丰富多样的界面交互。
以上就是从给定的信息中可以提炼出的Android源码示例的关键知识点,它们构成了一个基础的ViewPager应用的组成部分。通过这个示例,开发者可以学习如何在Android应用中有效地利用ViewPager这一强大的工具。
通过以上步骤,我们就可以创建一个具有广告轮播效果的ViewPager应用。在实践中,还可以根据需求进行更复杂的定制,如添加手势识别、无限循环等。理解并熟练运用ViewPager是提升Android应用交互体验的重要技能。
通过上述步骤,我们可以创建一个基本的ViewPager应用。然而,实际开发中可能还需要根据需求进行更复杂的定制,如处理滚动事件、自定义指示器样式等。对于这些高级用法,开发者需要深入理解ViewPager的工作原理并熟练...
同时,代码可作为参考和学习,帮助理解如何将ViewPager应用于欢迎界面。 总之,通过理解和应用ViewPager,开发者可以轻松地创建出富有吸引力的欢迎界面,为用户提供一个引人入胜的启动体验。在实际项目中,还可以...
ViewPager是Android平台中一个强大的视图滑动组件,常用于实现页面间的滑动切换...通过以上知识点,你可以创建一个功能丰富的ViewPager应用。在实际开发中,根据需求灵活运用这些技巧,可以打造出更加出色的用户界面。
通过上述步骤,开发者可以创建出具有独特3D翻转效果的ViewPager应用。这种效果不仅适用于图片浏览、内容切换等场景,还能在很多创新的UI设计中发挥重要作用,提升应用的用户体验和吸引力。 在提供的文件名`...
事件分发应用则表明这个组件着重处理触摸事件的传递和处理流程,即如何在父视图和子视图之间正确地分发ACTION_DOWN、ACTION_MOVE、ACTION_UP等触摸事件。 在Android中,ViewPager是一个用于展示可滑动页面的控件,...
在本示例"ViewPager实现应用启动动画"中,我们将探讨如何利用ViewPager来创建一个吸引人的应用程序启动界面,这通常被称为启动页或引导页。 首先,ViewPager的基础用法是承载多个Fragment或View,通过滑动来切换...