热门标签 | HotTags
当前位置:  开发笔记 > Android > 正文

AndroidViewFlipper翻转视图使用详解

这篇文章主要为大家详细介绍了AndroidViewFlipper翻转视图的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

简介

ViewFlipper是Android自带的一个多页面管理控件且可以自动播放!它和ViewPager有所不同,ViewPager继承自ViewGroup,是一页一页的,可以带动画效果,可以兼容低版本;而ViewFlipper继承ViewAnimator,是一层一层的,切换View的时候可以设置动画效果,是Android 4.0才引入的新控件。使用场景和ViewPager基本一样,在很多时候都是用来实现进入应用后的引导页或者用于图片轮播显示。

常用方法

setInAnimation:View进入屏幕时使用动画;
setOutAnimation:View退出屏幕时使用动画;
showNext:显示ViewFlipper里的下一个View视图;
showPrevious:显示ViewFlipper里的上一个View视图;
setFlipInterval:View之间切换的时间间隔;
setAutoStart:是否可以自动播放,true为自动播放,false为不自动播放;
startFlipping:自动循环切换播放;
stopFlipping:停止自动切换播放;

ViewFlipper加入View的两种方法

1.静态导入

所谓的静态导入就是像以下方式那样,将一个个页面添加到ViewFlipper的中间!



 

 

 

 


2.动态导入

所谓的动态导入就是像以下方式那样,通过addView方法填充View!

mVfHelp = (ViewFlipper) findViewById(R.id.vf_help);
for (int i = 0; i 

使用示例

效果图:

使用ViewFlipper实现图片轮播 - 静态导入

切换动画:

1.right_in.xml

<&#63;xml version="1.0" encoding="utf-8"&#63;>


 


2.right_out.xml

<&#63;xml version="1.0" encoding="utf-8"&#63;>


 




布局文件:

<&#63;xml version="1.0" encoding="utf-8"&#63;>


 

 

 

 

 
 



Java文件调用:

public class MethodOneActivity extends BaseActivity {

 private ViewFlipper mVfHelp;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_method_one);

 mVfHelp = (ViewFlipper) findViewById(R.id.vf_help);
 mVfHelp.startFlipping();
 }
}


支持手势滑动的ViewFlipper - 动态导入

切换动画:

1.left_in.xml

<&#63;xml version="1.0" encoding="utf-8"&#63;>


 



2.left_out.xml

<&#63;xml version="1.0" encoding="utf-8"&#63;>


 


布局文件:

<&#63;xml version="1.0" encoding="utf-8"&#63;>


 



Java文件调用:

private void initData() {
 //实例化SimpleOnGestureListener与GestureDetector对象
 mgListener = new MyGestureListener();
 mDetector = new GestureDetector(mActivity, mgListener);

 //动态添加子View
 for (int i = 0; i  MIN_MOVE) {
  mVfHelp.setInAnimation(mActivity, R.anim.right_in);
  mVfHelp.setOutAnimation(mActivity, R.anim.right_out);
  mVfHelp.showNext();
 } else if (e2.getX() - e1.getX() > MIN_MOVE) {
  mVfHelp.setInAnimation(mActivity, R.anim.left_in);
  mVfHelp.setOutAnimation(mActivity, R.anim.left_out);
  mVfHelp.showPrevious();
 }
 return true;
 }
}

项目地址 &#9758; 传送门

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


推荐阅读
  • 前期部署1.JDK安装,配置PATH2.下载spark-1.6.1-bin-hadoop2.6.tgz,并上传到服务器解压3.在 usr 下创建软链接到目标文件夹4.修改配置文件, ... [详细]
  • MyBatis笔记04分页查询、resultMap的简单使用
    MyBatis笔记04-----分页查询、resultMap的简单使用-分页查询1、分页查询的好处MyBatis作为持久层框架,主要任务就是操作数据库,即是对数据的增、删、查 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了WPF动态添加带有detals的ListViewItem相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 开始仔细学习WPF了说是动画不流畅,可以通过设置帧率解决,查了很多,都说设置Timeline.DesiredFrameRateProperty,但都没说加到哪里,在代码很多地方加上 ... [详细]
  • ros:cartographer(二)整体介绍
    cartographer的doc中给出了这个图。现在我还没看过源码,所以只能猜测一些内容。待看完源码后,再详细介绍这个图。直观地说,左侧 ... [详细]
  • 系统被描述为不依赖于底层技术的服务服务通过消息实现1SOA涉及到服务的提供者和消费者参与SOA的系统是服务提供者,还是服务的消费者,要视工作流而定服务和消息是无状态的2服务和消费者 ... [详细]
  • 本文目录一览:1、哪有免费的JAVA教程?2、 ... [详细]
  • ThefileIhaveisabitunstructuredandmessy.Ihavefoo.xmlwhosesizeis100gbsfilesuchas: ... [详细]
  • 文档地址:https:github.comaxiosaxiosaxios理解和使用1.请求配置1{2请求服务器的URL3url:'user',45method创 ... [详细]
  • 开发笔记:Mavent——学Java不会Maven,怎么行
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Mavent——学Java不会Maven,怎么行相关的知识,希望对你有一定的参考价值。 ... [详细]
  • IOC是spring的核心技术之一。在spring中IOC(控制反转)就是由IOC容器来控制程序࿰ ... [详细]
  • Mybatis_04日志
    前几天临近期末考试,一直在准备考试,吐槽一下,这个学期的考试真是全背书,服了,背吐了。考完试到元旦又放肆了几天 ... [详细]
  • 用idea创建项目,默认是单模块项目的。如果一个项目比较大,包含多个子系统,可能会有一些公共的东西,独立出来, ... [详细]
  • AOP是Spring的核心,Spring不但自身对多种框架的集成是基于AOP,并且以非常方便的形式暴露给普通使用者。以前用AOP不多,主要是因为它以横截面的方式插入到主流程中,担心导致主流程代码 ... [详细]
  • 三步打造安全可靠的个人数据中心
    2009年了,网速更快了,上网的人更多了,病毒***也更猖獗了,我们装系统也装的更勤了,嘿嘿问题当然也更多了。 ... [详细]
author-avatar
Edwin
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有