AdapterViewFlipper实现图片自动播放功能
2015-10-03 10:43
489 查看
概念:
AdapterViewFlipper继承了AdapterViewAnimator,它也会显示Adapter提供的多个View组件,但每次只能显示一个View组件,程序可通过showPrevious()和showNext()方法控制组件显示上一个,下一个组件。
相关方法:
1.startFilpping() 设置改组件是否自动播放
2.setFilpInterval(int) 设置自动播放的时间间隔
3.stopFilipping() 停止自动播放
4.showPrevious() 显示上一个组件
5.showNext() 显示下一个组件
实例讲解:
效果图如下(https://img-blog.csdn.net/20151003103640488)
activity_main代码如下:
MainActivity代码如下:
4000
AdapterViewFlipper继承了AdapterViewAnimator,它也会显示Adapter提供的多个View组件,但每次只能显示一个View组件,程序可通过showPrevious()和showNext()方法控制组件显示上一个,下一个组件。
相关方法:
1.startFilpping() 设置改组件是否自动播放
2.setFilpInterval(int) 设置自动播放的时间间隔
3.stopFilipping() 停止自动播放
4.showPrevious() 显示上一个组件
5.showNext() 显示下一个组件
实例讲解:
效果图如下(https://img-blog.csdn.net/20151003103640488)
activity_main代码如下:
- <RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <AdapterViewFlipper android:id="@+id/flipper" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignParentTop="true"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:onClick="prev" android:text="上一个"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentRight="true" android:onClick="next" android:text="下一个"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentRight="true" android:onClick="auto" android:text="自动播放"/> </RelativeLayout>
MainActivity代码如下:
public class MainActivity extends Activity { //存储图片资源 private int[] imageIds = newint[] { R.drawable.pic1, R.drawable.pic2, R.drawable.pic3, R.drawable.pic4, R.drawable.pic5, R.drawable.pic6, R.drawable.pic7, R.drawable.pic8, R.drawable.pic9, R.drawable.pic10, }; //自动播放控件 private AdapterViewFlipper flipper; @Override protecte dvoid onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); flipper = (AdapterViewFlipper) findViewById(R.id.flipper); BaseAdapter adapter = new BaseAdapter() { // 改方法返回的view代表了每个列表项 @Override public View getView(int position, View convertView, ViewGroup parent) { // 创建一个ImageView ImageView imageView = new ImageView(MainActivity.this); imageView.setImageResource(imageIds[position]); // 设置ImageView的缩放类型 imageView.setScaleType(ImageView.ScaleType.FIT_XY); // W为ImageView设置布局参数 imageView.setLayoutParams(new LayoutParams( LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)); return imageView; } @Override publiclong getItemId(int position) { return position; } @Override public Object getItem(int position) { return position; } @Override publicint getCount() { returnimageIds.length; } }; //设置适配器 flipper.setAdapter(adapter); } //设置点击事件方法 public void prev(View source) { // 显示上一个组件 flipper.showPrevious(); // 停止自动播放 flipper.stopFlipping(); } public void next(View source) { // 显示下一个组件 flipper.showNext(); // 停止自动播放 flipper.stopFlipping(); } public void auto(View source) { // 设置自动播放的时间间隔为2秒 flipper.setFlipInterval(2000); // 开始自动播放 flipper.startFlipping(); } }
4000
相关文章推荐
- autoPlay 基于jquery的图片自动播放效果
- Android使用自定义属性实现图片自动播放滚动的功能
- 数据库中DDL、DML、DCL和TCP概念
- CentOS6.5设备MRBS
- 昨天发现的nginx默认不支持下划线引起angular-phonecat项目部分文件404问题
- 1.3.4 为在保护模式下执行head.s做准备
- ASF(传感器)
- Linux 守护进程的编程方法 http://blog.csdn.net/hairetz/article/details/4195036
- java 网络编程——day23
- socket编程
- OC学习笔记之Foundation框架NSNumber、NSValue和NSDate(转)
- Java常用的设计模式05:常用设计模式之原型模式(创建型模式)
- Linux进程控制 http://blog.csdn.net/kennyrose/article/details/7533534
- HDU 2673 shǎ崽 OrOrOrOrz(水~)
- 在成长中学习编程,在编程中成长(1)
- 编写类似strstr/strcpy/strpbrk函数
- FileInputFormat类的输入路径
- OpenCV描述符匹配子通用接口
- hibernate小笔
- [Qt] QString 和 char* 转换