首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

实现轮播效果:ViewFlipper 和 ViewAnimator

说到ViewFlipper,就不得不先说ViewAnimator,它是ViewFlipper的父类,ViewFlipper的功能就是在它基础上扩展出来的。...它的主要作用就是可以切换这些子view,且切换时有动画过渡。 我们可以直接在xml中给它添加子view,也可以通过addView系列函数动态添加子view。...还可以使用setInAnimation和setOutAnimation设置切换动画。 可以看到这些就满足了我们轮播的基本需求:切换+动画。...而ViewFlipper就是本文的主角,它实现来定时切换功能。 ViewFlipper ViewFlipper在ViewAnimator的基础上实现来定时切换的功能,我们可以设置切换时间。...使用ViewFlipper切换时默认是瞬时的,但是因为它继承ViewAnimator,所以可以添加过渡动画,通过两个函数即可: flipper.setInAnimation(mContext, R.anim.in_bottom

76820

ViewFlipper实现文字轮播效果

间接的继承了FrameLayout,也可以说ViewFlipper其实就是个FrameLayout,只不过在内部封装了动画实现和Handler实现一个循环而已。...--android:outAnimation:设置切换View的退出动画-- <ViewFlipper android:id="@+id/view_flipper" android:layout_width...: 设置切换View的退出动画 下面是ViewFlipper常用的方法介绍,除了可以设置上面的属性之外,还提供了其他方法 isFlipping : 判断View切换是否正在进行 setFlipInterval...setInAnimation : 设置切换View的进入动画 showNext : 显示ViewFlipper里的下一个View showPrevious : 显示ViewFlipper里的上一个View...这里还涉及到两个动画其实就是一个平移的动画,它们都保存在anim文件夹中 slide_in_down.xml 进入动画 <?

2.1K20
您找到你想要的搜索结果了吗?
是的
没有找到

2014-11-3Android学习------利用ViewFlipper实现滑动翻页的效果--------GIF动画实现

2.定义四个动画布局,分别是向右滑进,向右滑出,向左滑进,向左滑出 左边进: <?xml version="1.0" encoding="utf-8"?...// 从左向右滑动 if (arg0.getX() - arg1.getX() > 120) { // 添加动画 this.viewFlipper.setInAnimation(AnimationUtils.loadAnimation...// 从左向右滑动 if (arg0.getX() - arg1.getX() > 120) { // 添加动画 this.viewFlipper.setInAnimation(AnimationUtils.loadAnimation...就是怎么让这个图片加载出来呢,使用的是这样的代码: // 添加动画 this.viewFlipper.setInAnimation(AnimationUtils.loadAnimation(..., R.anim.push_left_out)); 首先是去设置ViewFlipper对象,如果是向左滑,动画加载工具去加载这个动画 然后把下个视图显示出来:this.viewFlipper.showNext

64120

Android实现页面翻转和自动翻转功能

android:autoStart: 设置自动加载下一个View android:flipInterval:设置View之间切换的时间间隔 android:inAnimation: 设置切换View的进入动画...android:outAnimation:设置切换View的退出动画 当然同样的在代码中也可以设置: isFlipping: 判断View切换是否正在进行 setFilpInterval:设置View...之间切换的时间间隔 startFlipping: 开始View的切换,而且会循环进行 stopFlipping: 停止View的切换 setOutAnimation:设置切换View的退出动画...setInAnimation: 设置切换View的进入动画 showNext: 显示ViewFlipper里的下一个View showPrevious: 显示ViewFlipper里的上一个View...viewFlipper; // Animation[] animations=new Animation[4]; //注释的部分为添加动画效果 int distance=50; @Override

1.9K21

Android使用手势实现翻页效果

本程序的手势检测思路就是把Activity的TouchEvent交给GestureDetector处理,本程序使用了一个ViewFlipper组件,ViewFlipper可使用动画控制多个组件之间的切换效果...-- 定义ViewFlipper组件 -- <ViewFlipper android:id="@+id/flipper" android:layout_width="wrap_content...实例 ViewFlipper flipper; // 定义手势检测实例 GestureDetector detector; // 定义一个动画数组,用于为ViewFlipper指定切换动画效果 Animation...实例 flipper = (ViewFlipper) this.findViewById(R.id.flipper); // 为ViewFlipper添加8个ImageView组件 flipper.addView...采用动画方式切换为上一个View;当e2.getX() – e2.getX()的距离大于特定距离时,即可判断用户手势为从左向右滑动,此时设置ViewFlipper采用动画方式切换为下一个View——这样就实现了所谓的

1.6K41

Android实现页面滑动切换动画

本文实例为大家分享了Android实现页面滑动切换动画的具体代码,供大家参考,具体内容如下 实现两个页面滑动切换,一些相册的效果也是如此 一个Activity的界面配置文件 activity_main.xml...; public class MainActivity extends Activity { private ViewFlipper viewFlipper; private...anim/文件夹下有 enter_lefttoright.xml和enter_righttoleft.xml out_lefttoright.xml和out_righttoleft.xml 四个动画配置文件...-- 这里用到了平移动画,这里只动x轴坐标就可以了 -100%p:这就是屏幕的宽度:这里的p代表parent,父元素的宽度,都是 手机屏幕宽度,第一页要从-100%p移动到0,持续5秒中....(将配置文件换成其他的动画效果也可以,本例子使用的是移入移出的动画效果) 以上就是本文的全部内容,希望对大家的学习有所帮助。

2.7K40

【Android初级】如何实现一个比相册更高大上的左右滑动特效

如见其名,这个类是跟动画有关,会将添加到它里面的两个或者多个View做一个动画,然后每次只显示一个子View,通过在 View 之间切换时执行动画,最终达到一个类似相册能左右滑动的效果。...本次功能要实现的两个基本效果 ---- 最基本的左右滑动效果 从屏幕的45度方向进入和退出的效果 实现思路 ---- 按照 ViewFlipper 的源码说明,它是将两个或多个View用动画展示出来。...那么我就在 ViewFlipper 内放入两个布局,每个布局都包含一个 TextView 和 ImageView,分别用于显示文字和图片 既然要有动画效果,我准备使用Android的位移动画类 TranslateAnimation...,设置起始的横纵坐标值 为了让效果明显,我会设置 ViewFlipper 的进入和退出屏幕的动画,并且在左滑时呈现一个动画、右滑时呈现另一个动画(需要判断是左滑还是右滑:重写 onTouchEvent...ViewFlipper中的 View 就位于象限的中心位置。因此,如果动画从左上角进入,那么它的起始横纵坐标就是(-1,-1)。大家可以按照这个思路去实现自己想要的动效。

82010

Android自定义ViewFlipper实现滚动效果

说下实现思路:自定义view继承至LinearLayout,控制item数量及其动画效果,实现item复用,传入数据即可,使用方便。...private final int MAX_SHOW_ITEM_SIZE = 5; private IAdapter mIAdapter; private int mCount; //最后一个item动画...private Animation mLastOneAnimation; //其它item动画 private Animation mCommonAnimation; //数据下标 private int...mCurrentIndex; /** * 这里动画时间是1600毫秒,所以间隔得大于动画时间 */ private static final int DEFAULT_INTERVAL = 2000;...这里布局文件我就不贴出来了,附上工程源码,项目里动画时间有点长,修改下就ok。 限于水平有限,不足之处难免,望各位不舍指正,与君共勉。 以上就是本文的全部内容,希望对大家的学习有所帮助。

1K50

Android开发笔记(二十一)横幅轮播页Banner

ViewFlipper的概念 设计ViewFlipper的初衷就是给视图翻转实现动画功能,与ViewPager相比,ViewFlipper是自动翻页动画,而ViewPager是手工翻页动画。...ViewFlipper的常用方法 下面是ViewFlipper的常用方法: setFlipInterval : 设置每次翻页的时间间隔。...setInAnimation : 设置视图的移入动画。 getInAnimation : 获取移入动画的对象。 setOutAnimation : 设置视图的移出动画。...4、页面滑动的监听器 ViewPager可调用setOnPageChangeListener方法设置页面滑动监听器,而ViewFlipper没有专门的滑动监听器,只能通过动画监听器AnimationListener...具体说来,便是ViewFlipper先调用getInAnimation或者getOutAnimation获取移入或移除动画的Animation对象,然后再给这些动画对象注册动画监听器setAnimationListener

3.1K30

Android 滑动效果入门篇(一)—— ViewFlipper

(true); // 设置自动播放功能(点击事件,前自动播放) viewFlipper.setFlipInterval(3000); if(viewFlipper.isAutoStart()...(MotionEvent event) { viewFlipper.stopFlipping(); // 点击事件后,停止自动播放 viewFlipper.setAutoStart(false...开始自动播放 停止自动播放View,设置成员函数如下: 1、 stopFlipping(),停止自动播放 2、 setAutoStart(false),停止自动播放,设为false 二、手势滑屏 手势滑动屏幕动画...MotionEvent e2, float distanceX, float distanceY):在屏幕上拖动事件,即down按下点——scroll拖动——up抬起点的move移动事件 本示例的滑动屏幕动画...GestureDetector.OnGestureListener回调函数onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) 中,实现滑屏动画

1.6K10

Android仿京东快报无限轮播效果

整个过程还伴随有内容的渐变消失,动画效果很流畅。 采用ViewFlipper来实现更为简单。...直译:ViewFlipper是一个容器,能够将添加在里面的两个或更多子View动画的切换,在一个时间点只有一个child展示出来。并且可以自动的在每隔一个时间段切换到一个child。...要实现京东快报的切换效果,我们只需要将需要根据轮播的公告内容设置到TextView并添加到ViewFlipper,同时设置他们之间的切换动画就可以了。...为了方便在项目中直接重复使用,我们可以将其自定义为一个继承自ViewFlipper的控件NoticeView。...3000); // 内边距5dp setPadding(dp2px(5f), dp2px(5f), dp2px(5f), dp2px(5f)); // 设置enter和leave动画

90630

ViewFlipper实现多页面切换

意思是:简单的ViewAnimator之间,两个或两个以上的view加上动画效果。只有一个小孩会显示在一个时间。如果需要,每个孩子能自动翻转之间在固定的时间间隔。...该类继承了Framelayout类,ViewAnimator类的作用是为FrameLayout里面的View切换提供动画效果。...该类有如下几个和动画相关的函数:  setInAnimation:设置View进入屏幕时候使用的动画,该函数有两个版本,一个接受单个参数,类型为android.view.animation.Animation...setOutAnimation: 设置View退出屏幕时候使用的动画,参数setInAnimation函数一样。 showNext: 调用该函数来显示FrameLayout里面的下一个View。...3、首选看一下定义四个动画的xml文件: in_left_right.xml——从左到右进入屏幕 <?xml version="1.0" encoding="utf-8"?

1.4K100
领券