ViewPager VS ViewFilpper

ViewFlipper继承ViewAnimator,主要用于多个view之间的切换,比如把很多图片加入到ViewFlipper中进行切换,切换view的时候是有动画效果的,适合做ppt,多界面的程序欢迎引导界面,算是个轻量级的组件,适合展示静态数据,少量数据。

ViewFilpper控件是系统自带控件之一,主要是为两个页面间的切换设置动画效果。ViewFilpper继承自FrameLayout下的ViewAnimator, 

android.widget.ViewAnimator类继承至FrameLayout,ViewAnimator类的作用是为FrameLayout里面的View切换提供动画效果。该类有如下几个和动画相关的函数: 
setInAnimation:设置View进入屏幕时候使用的动画,该函数有两个版本,一个接受单个参数,类型为android.view.animation.Animation;一个接受两个参数,类型为Context和int,分别为Context对象和定义Animation的resourceID。
setOutAnimation: 设置View退出屏幕时候使用的动画,参数setInAnimation函数一样。 
showNext: 调用该函数来显示FrameLayout里面的下一个View。 
showPrevious: 调用该函数来显示FrameLayout里面的上一个View。 

ViewFilpper使用时主要是在有限的少数页面切换中比较合适,并且能够自定义每一个切换动画,用于一个应用间的画面切换比较合适,类似于ActivityGroup。



ViewPager:ViewPager用于实现多页面的切换效果,该类存在于Google的兼容包里面,所以在引用时记得在BuilldPath中加入“android-support-v4.jar”

viewpager需要设置PagerAdapter(跟listview类似),PagerAdapter中几个必须实现的4个方法:

public int getCount()//获取当前窗体界面数
public Object instantiateItem(View collection, int position)//初始化position位置的界面,预先加载当前与左右的view
public void destroyItem(View collection, int position, Object view)//销毁非当前与左右的view
public boolean isViewFromObject(View arg0, Object arg1)//判断是否由对象生成界面





你可能感兴趣的:(ViewPager VS ViewFilpper)