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

  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. ABAP-FTP通用操作

  2. vue深入了解组件——Prop

    一.Prop的大小写(camelCase vs kebab-case) HTML中的特性名是大小写不敏感的,所以浏览器会把所有大写字符解释为小写字符.这意味着当你使用DOM中的模板时,cameCase ...

  3. tensorflow Process finished with exit code 137 (interrupted by signal 9: SIGKILL) 错误

    Process finished with exit code 137 (interrupted by signal 9: SIGKILL) 在使用tensorflow自带的数据集做手写数字识别的时候 ...

  4. python os模块常用命令

    python编程时,经常和文件.目录打交道,这是就离不了os模块.os模块包含普遍的操作系统功能,与具体的平台无关.以下列举常用的命令 1. os.name()——判断现在正在实用的平台,Window ...

  5. MeToo, one year on

    表示转折/让步关系:but, however, nevertheless, whereas, although, despite, in spite of, still 表示比较或对比关系:simil ...

  6. 自定义worker的方法,及一例

    自定义的worker用于处理各种特殊需求. 有网友想用html_json提取雪球网(https://xueqiu.com/)的数据,可是雪球网用了反爬虫技术,网站要求有cookies才能访问到json ...

  7. Null Hypothesis and Alternate Hypothesis

    1.Null Hypothesis Overview 零假设,H0是普遍接受的事实;这与备择假设(alternate hypothesis)正好相反.研究人员努力否定.驳斥零假设.研究人员提出了另一种 ...

  8. spring-boot PageHelper

    分页插件PageHelper 参看了pagehelper-spring-boot,使用起来非常放方便,关于更多PageHelper可以点击https://github.com/pagehelper/M ...

  9. Jmeter分布式

    Jmeter运行时十分耗CPU和内存,在实际应用中有时一台机器不能满足测试要求,这时就需要利用多台机器来进行分布式.   Jmeter分布式的测试框架:框架中所有的测试脚本都要从测试主机传送到测试从机 ...

  10. Web标准:三、二列和三列布局

    知识点: 1.二列自适应宽度 2.二列固定宽度 3.二列固定宽度居中 4.xhtml的块级元素(div)和内联元素(span) 5.float属性 6.三列自适应宽度 7.三列固定宽度 8.三列固定宽 ...