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

  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. as3 区别中文 英文 数字

    1)英文a-z是65-90,A-Z是97-112 2)数字是0-9是,48-57 3)上万的都是中文字符 var str:String = "hello world! 你好世界! 88!&q ...

  2. MAC CURL : Error:35 SSL certificate problem: Couldn't understand the server certificate format

    起因,使用极光推送最新的版本,里面curl使用https请求,而导致证书出错.一看就懵逼了,从来没遇到过这样的问题,二话不说直接百度,然后就更加懵逼了,搜出来的没有中文内容,对于我这种英文渣来说,简直 ...

  3. C#连接sqlserver windows 和 sqlserver 身份验证的两种连接字符串

    //sql server 身份验证 连接字符串 private string ConnstrSqlServer = "server=服务器名称;uid=登录名称;pwd=登录密码;datab ...

  4. MCI 录制指定格式音频

    可先用其他格式转换软件转换一段0秒指定格式的音频,然后用mcisendstring(L"open xxx.avi alias abc",0,0,0)打开,在进行录音mcisends ...

  5. hadoop配置文件的参数含义说明

    #hadoop version 查看版本号 1 .获取默认配置 hadoop2系列配置文件一共包括6个,分别是hadoop-env.sh.core-site.xml.hdfs-site.xml.map ...

  6. 【336】Tutorial of Endnote

    Now I start to use Endnote to manage my literatures and I need to learn how to use it. Below is some ...

  7. fm 讲解加代码

    转自: 博客 http://blog.csdn.net/google19890102/article/details/45532745/ github https://github.com/zhaoz ...

  8. DNS使用的是TCP协议还是UDP协议

    原文:http://benbenxiongyuan.iteye.com/blog/1088085 DNS同时占用UDP和TCP端口53是公认的,这种单个应用协议同时使用两种传输协议的情况在TCP/IP ...

  9. Android使用HTTPS进行IP直连握手失败问题(okHttp)

    为什么要使用ip直连这种方式去请求我们的服务器呢?这其实和国内运营伤有关,运营商有时为了利益会将你的域名劫持换成他人的域名,为了防止这种情况的发生通用的解决办法要么联系运营商要么就只能使用ip直连了. ...

  10. ThreadPoolExecutor常识

    线程池技术在并发时经常会使用到,java中的线程池的使用是通过调用ThreadPoolExecutor来实现的.ThreadPoolExecutor提供了四个构造函数,最后都会归结于下面这个构造方法: ...