作者实现的基础上,加上了文字的变换

  1. public class MainActivity extends Activity
  2. {
  3. private ViewFlipper viewFlipper;
  4. private Button autoplay;
  5. @Override
  6. public void onCreate(Bundle savedInstanceState)
  7. {
  8. super.onCreate(savedInstanceState);
  9. setContentView(R.layout.main);
  10. viewFlipper = (ViewFlipper) findViewById(R.id.details);
  11. autoplay = (Button) findViewById(R.id.autoplay);
  12. }
  13. public void prev(View source)
  14. {
  15. viewFlipper.setInAnimation(this , R.anim.slide_in_right);
  16. viewFlipper.setOutAnimation(this , R.anim.slide_out_left);
  17. // 显示上一个组件
  18. viewFlipper.showPrevious();
  19. // 停止自动播放
  20. viewFlipper.stopFlipping();
  21. autoplay.setText("自动播放");
  22. }
  23. public void next(View source)
  24. {
  25. viewFlipper.setInAnimation(this , android.R.anim.slide_in_left);
  26. viewFlipper.setOutAnimation(this , android.R.anim.slide_out_right);
  27. // 显示下一个组件
  28. viewFlipper.showNext();
  29. // 停止自动播放
  30. viewFlipper.stopFlipping();
  31. autoplay.setText("自动播放");
  32. }
  33. public void auto(View source)
  34. {
  35. viewFlipper.setInAnimation(this , android.R.anim.slide_in_left);
  36. viewFlipper.setOutAnimation(this , android.R.anim.slide_out_right);
  37. String s=autoplay.getText().toString();
  38. if (s.equals("自动播放")) {
  39. // 开始自动播放
  40. viewFlipper.startFlipping();
  41. autoplay.setText("停止自动");
  42. } else {
  43. viewFlipper.stopFlipping();
  44. autoplay.setText("自动播放");
  45. }
  46.  
  47. }
  48. }

XML文件

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <RelativeLayout
  3. xmlns:android="http://schemas.android.com/apk/res/android"
  4. android:layout_width="match_parent"
  5. android:layout_height="match_parent">
  6. <ViewFlipper
  7. android:id="@+id/details"
  8. android:layout_width="match_parent"
  9. android:layout_height="match_parent"
  10. android:flipInterval="1000">
  11. <ImageView
  12. android:src="@drawable/java"
  13. android:layout_width="match_parent"
  14. android:layout_height="wrap_content">
  15. </ImageView>
  16. <ImageView
  17. android:src="@drawable/android"
  18. android:layout_width="match_parent"
  19. android:layout_height="wrap_content">
  20. </ImageView>
  21. <ImageView
  22. android:src="@drawable/javaee"
  23. android:layout_width="match_parent"
  24. android:layout_height="wrap_content">
  25. </ImageView>
  26. </ViewFlipper>
  27. <Button
  28. android:text="<"
  29. android:onClick="prev"
  30. android:layout_width="wrap_content"
  31. android:layout_height="wrap_content"
  32. android:layout_alignParentBottom="true"
  33. android:layout_alignParentLeft="true"/>
  34. <Button
  35. android:id="@+id/autoplay"
  36. android:layout_width="wrap_content"
  37. android:layout_height="wrap_content"
  38. android:layout_alignParentBottom="true"
  39. android:layout_centerInParent="true"
  40. android:onClick="auto"
  41. android:text="自动播放"/>
  42. <Button
  43. android:text=">"
  44. android:onClick="next"
  45. android:layout_width="wrap_content"
  46. android:layout_height="wrap_content"
  47. android:layout_alignParentBottom="true"
  48. android:layout_alignParentRight="true"/>
  49. </RelativeLayout>
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">
  3. <!-- 设置从右边拖进来的动画
  4. android:duration指定动画持续时间 -->
  5. <translate
  6. android:fromXDelta="100%p"
  7. android:toXDelta="0"
  8. android:duration="@android:integer/config_mediumAnimTime" />
  9. </set>
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">
  3. <!-- 设置从左边拖出去的动画
  4. android:duration指定动画持续时间 -->
  5. <translate
  6. android:fromXDelta="0"
  7. android:toXDelta="-100%p"
  8. android:duration="@android:integer/config_mediumAnimTime" />
  9. </set>

效果

ViewFlipper实现自动播放的图片库的更多相关文章

  1. AdapterViewFlipper功能 自动播放的图片库

    案例中有"上一个""下一个""自动播放",但是我觉得可以更加完善一下,点击自动播放,按钮变成"停止播放",在按" ...

  2. jQuery可自动播放动画焦点图插件Koala

    Koala是一款简单而实用的jQuery焦点图幻灯片插件,焦点图不仅可以在播放图片的时候让图片有淡入淡出的动画效果,而且图片可以自动播放.该jQuery焦点图的每一张图片都可以设置文字描述,并浮动在图 ...

  3. 微信的audio无法自动播放的问题

    一.问题 最近做了一个html5的项目,里面涉及到音乐播放,项目要求音乐进入页面就自动播放,于是我就想到了html5的audio标签,将mp3引入进去. 1.在audio标签里引入了autoplay属 ...

  4. android audio无法自动播放

    audio无法在android4.4+和ios6以上的版本自动播放,因为他们出于安全考虑,做了限制.必须用户自己手工点击才能播放,程序是控制不了播放的. 整死我了,整整搞了2天,查不出所以然,原来就这 ...

  5. iOS下Audio自动播放(Autoplay)音乐

    前几天做了一个H5活动页面,产品要求初始化播放音乐,因晓得H5 Audio标签支持Autoplay就没在意. 完了在手机上测试,发现手机上打开页面死活就是不会自动播放,点击播放按钮才可以播放,很是纠结 ...

  6. 新版微信h5视频自动播放

    微信最近升级了新版本,直播视频不能自动播放,经过了一番探索,发现下列方法可以实现自动播放. if (typeof WeixinJSBridge == "undefined") { ...

  7. Bootstrap之Carousel不能自动播放的解决办法(转)

    Bootstrap是一个非常好的css/javaScript框架,尤其对于移动端的自适应和适配能力都比较强. 用Bootstrap自带的Carousel写了一个图片轮播的广告部分,用js调用后却出现了 ...

  8. 【转】一种解决h5页面背景音乐不能自动播放的方案

    原文:http://www.cnblogs.com/wmhuang/p/5452259.html --------------------------------------------------- ...

  9. iOS - 如何自动播放H5中的音频

    场景:iOS端设备,App页面跳转到H5产品介绍,背景音乐无法播放.(为什么不能自动播放,因该是iPhone人性化设定吧~) 加载H5用UIWebView空间: 代码: CGRect rect = s ...

随机推荐

  1. SmartOS技术常见问题

    什么是默认用户名和密码? 当SmartOS Live Image第一次启动时,系统将提示您设置root密码. 如果在不导入Zpool的情况下启动SmartOS,则需要默认的root密码. 当使用noi ...

  2. Android 最火开发框架 xUtils

    xUtils简介 xUtils3 api变化较多, 已转至 https://github.com/wyouflf/xUtils3 xUtils 2.x对Android 6.0兼容不是很好, 请尽快升级 ...

  3. Android热修复(HotFix)实战

    线上的BUG一直是程序员头疼的问题.有时候仅仅是因为几行的代码,就能让你的用户损失严重.谷歌在Android Studio 加入了Insttan Run 机制.通过Apk动态加载的技术实现了应用非安装 ...

  4. svn: authentication cancelled

    从svn 下程序时用户名和密码输入正确后报如图错误! 控制台输出: svn: authentication cancelled    svn: authentication cancelled    ...

  5. 警告: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:Weixin' did not find a matching property.

    警告: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclips ...

  6. django做form表单的数据验证

    我们之前写的代码都没有对前端input框输入的数据做验证,我们今天来看下,如果做form表单的数据的验证 在views文件做验证 首先用文字描述一下流程 1.在views文件中导入forms模块 2. ...

  7. python之socket运用2

    今天实现在客户端和服务端之间进行持续的通信 客户端代码 import socket ip_port = ("127.0.0.1",3000) sk = socket.socket( ...

  8. 数据流滑动窗口平均值 · sliding window average from data stream

    [抄题]: 给出一串整数流和窗口大小,计算滑动窗口中所有整数的平均值. MovingAverage m = new MovingAverage(3); m.next(1) = 1 // 返回 1.00 ...

  9. Java多线程超详细总结

    目录(?)[-] 一扩展javalangThread类 二实现javalangRunnable接口 三Thread和Runnable的区别 四线程状态转换 五线程调度 六常用函数说明 使用方式 为什么 ...

  10. ROS学习笔记三(理解ROS节点)

    要求已经在Linux系统中安装一个学习用的ros软件包例子: sudo apt-get install ros-indigo-ros-tutorials ROS图形概念概述 nodes:节点,一个节点 ...