博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用ViewFlipper实现图片轮播
阅读量:6564 次
发布时间:2019-06-24

本文共 2735 字,大约阅读时间需要 9 分钟。

public class MainActivity extends AppCompatActivity {    private ViewFlipper flipper;    //背景图片int[] id    private int[] resID = {R.drawable.pic1,R.drawable.pic2,R.drawable.pic3,R.drawable.pic4};    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        flipper = (ViewFlipper) findViewById(R.id.flipper);        //动态导入的方式为ViewFlipper加入子View        for(int i = 0; i < resID.length ; i++){            flipper.addView(getimageview(resID[i]));        }        //为ViewFlipper去添加动画效果        flipper.setInAnimation(this,R.anim.right_in);        flipper.setOutAnimation(this,R.anim.right_out);        //切换间隔时间        flipper.setFlipInterval(3000);        //开始播放        flipper.startFlipping();    }    private ImageView getimageview(int resID){        ImageView image = new ImageView(this);        image.setBackgroundResource(resID);        return image;    }

  

手指滑动

public class MainActivity extends AppCompatActivity {    private ViewFlipper flipper;    //X横坐标    private float startX;    //背景图片int[] id    private int[] resID = {R.drawable.pic1,R.drawable.pic2,R.drawable.pic3,R.drawable.pic4};    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        flipper = (ViewFlipper) findViewById(R.id.flipper);        //动态导入的方式为ViewFlipper加入子View        for(int i = 0; i < resID.length ; i++){            flipper.addView(getimageview(resID[i]));        }    }    private ImageView getimageview(int resID){        ImageView image = new ImageView(this);        image.setBackgroundResource(resID);        return image;    }    //手指滑动    @Override    public boolean onTouchEvent(MotionEvent event) {       switch (event.getAction()){           case MotionEvent.ACTION_DOWN:{               startX = event.getX();               break;           }           case MotionEvent.ACTION_MOVE:{               //向右滑动               break;           }           case MotionEvent.ACTION_UP:{               if(event.getX() - startX  > 100){                   flipper.setInAnimation(this,R.anim.left_in);                   flipper.setOutAnimation(this, R.anim.left_out);                   flipper.showPrevious();                  //显示前一项               }               //向左滑动               if(startX - event.getX() > 100){                   flipper.setInAnimation(this,R.anim.right_in);                   flipper.setOutAnimation(this,R.anim.right_out);                   flipper.showNext();               }               break;           }       }        return super.onTouchEvent(event);    }

  

转载于:https://www.cnblogs.com/zmaibbs7/p/4854781.html

你可能感兴趣的文章
zabbix监控交换机
查看>>
css3做的nav
查看>>
汇编笔记
查看>>
在线枚举内核模块函数及地址(win64位)
查看>>
deploy nginx using saltstack
查看>>
rsync实现文件传输
查看>>
控件联动(三级联动)
查看>>
shell编程学习
查看>>
点击qq、点击邮箱01
查看>>
时间处理总结(三)javascript与WCF
查看>>
构建之法笔记4
查看>>
FOB注意事项
查看>>
Ubantu下安装jdk 教程
查看>>
ActiveMQ入门实例
查看>>
手机monkey测试BUG重现及解决方法
查看>>
linux安装至少有哪两个分区,各自作用是什么?
查看>>
转载: 数据库索引原理和优缺点
查看>>
swoole 安装和简单实用
查看>>
文件系统 第八次迭代 VFS相关说明
查看>>
InfoPi运行机制介绍
查看>>