zoukankan      html  css  js  c++  java
  • 【android】gallery 循环播放

    目标:gallery播放时,图片向左或者向右,到头后都会留点空白,这样的效果很不好,虽然可以使用setselection()函数设置默认显示图片,留有空白是仍然存在的,于是为了解决此问题,好像大家都是使用gallery的循环播放。

    详细的用法,可以参考http://blog.csdn.net/herryz/archive/2011/01/15/6141957.aspx 

    为了实现循环播放,一般有三个地方,需要修改:

    (1)修改ImageAdapter中的getCount()(返回图像的总数量)函数:

    // 返回图像总数   
    public int getCount()
    {
    	//return images.length;
    	return Integer.MAX_VALUE;
    }

    (2)修改ImageAdapter中的getView()函数:

        public View getView(int position, View convertView, ViewGroup parent)
        {  
          ImageView i = new ImageView(mContext);
    
          //i. setImageResource(myImageIds[position]); 
          //循环取图像数据     
          i.setImageResource(myImageIds[position%images.length]); /* 设定图片给imageView对象 */  
    
          i.setScaleType(ImageView.ScaleType.FIT_XY);            /* 重新设定图片的宽高 */  
          i.setLayoutParams(new Gallery.LayoutParams(136, 88));  /* 重新设定Layout的宽高 */  
          i.setBackgroundResource(mGalleryItemBackground);       /* 设定Gallery背景图 */  
          return i;                                              /* 传回imageView物件 */  
        } 

    (3)一般而言,上述1、2步就可以了,但是如果你细心点的话,就会发现,其实1、2步向右的确实现了循环播放,但是向左,仍然不可以循环。这时候,为了实现向左的“循环”,我们可以设置gallery的setselection()函数:

    gallery.setselection(300);

    取第301张图片昨晚默认居中图片,这样,用户向左滑动的时候,一般而言,不会滑300下吧~这样给用户造成的视觉效果就是实现了向左循环了。

  • 相关阅读:
    php函数注释
    组件化开发
    7.哪些工具可以帮助查找bug或进行静态分析
    6.Python中内存是如何管理的?
    5.Python是怎么解释的?
    4.pickling 和unpickling是什么?
    3.PEP 8是什么?
    2.Python是什么?使用Python的好处是什么?
    Redis介绍及字符串操作
    字符串转换为二进制
  • 原文地址:https://www.cnblogs.com/Amandaliu/p/2085262.html
Copyright © 2011-2022 走看看