最近在项目中用到图片轮播,试了Gallery,ViewFlipper,ViewPager,感觉Gallery最符合需求,但是Gallery的系统边框很难看,项目中要求用自己的背景图片。

下面来看一下使用Gallery实现图片轮播

运行效果:

布局文件:

[java] view
plain
copy

 
  1. <FrameLayout
  2. >
  3. />
  4. >
  5. />
  6. />
  7. />
  8. </FrameLayout>

其中, android:fadingEdge="none"消除图片两边的阴影。使用FrameLayout在底部显示小圆点

[java] view
plain
copy

 
  1. publicclassextends

    private
    privateint;

  2. private
  3. privatestaticfinalint;
  4. publicvoid
    super

    ].setImageDrawable(getBaseContext().getResources()

  5. newthis

    new
    , );

  6. privatevoid

    new

    privatenew

  7. publicvoid
    new
    ;
  8. * 开一个线程执行耗时操作
  9. */
    privatenew
  10. publicvoid
    super
    switch
    case:
  11. break
    default
    break

    * 设置小圆点显示,position会一直增加,如果要循环显示图片,需要对position取余,否则数组越界

  12. */
    privatenew
  13. publicvoid
    intlong
    int

    if) {

  14. ].setImageDrawable(getBaseContext()
  15. if)) {
  16. ].setImageDrawable(getBaseContext()
  17. if) {
  18. ]
  19. publicvoid
  20. * 点击事件,点击图片进入SecondActivity
  21. */
    privatenew
  22. publicvoidint
    long
    new
    thisclass

    }

ImageAdapter类,重写android.widget.BaseAdapter,用于描述图像信息。

[java] view
plain
copy

 
  1. publicclassextends
    private
    privateint

    privatestaticfinalint;

  2. public
    this
  3. publicint
    return
  4. publicint
    return
  5. publiclongint
    return
  6. publicint
    new

    new

    new
    , , , );

  7. return

    }

如果用系统背景,可以这样写

[java] view
plain
copy

 
  1. int
    private

    public

    // 获得Gallery组件的属性

    );

  2. }

在getview中设置

[java] view
plain
copy

 
  1. imageView.setBackgroundResource(mGalleryItemBackground);

Gallery组件属性信息定义在res\values\attrs.xml

[java] view
plain
copy

 
  1. <?xml version= encoding=?>
  2. >
  3. />
  4. </resources>

android gallery 自定义边框+幻灯片的更多相关文章

  1. android gallery 自定义边框+幻灯片效果

    最近在项目中用到图片轮播,试了Gallery,ViewFlipper,ViewPager,感觉Gallery最符合需求,但是Gallery的系统边框很难看,项目中要求用自己的背景图片. 下面来看一下使 ...

  2. Android之EditText自定义边框和边框颜色(转载)

    介绍一种比较常见的用法 第一步:准备两张图片大小一样,颜色不同的图片.图片名称分为:editbox_focus.png和editbox_normal.png 放入工程的drawable文件夹下. 第二 ...

  3. Android RatingBar 自定义样式

    Android RatingBar 自定义样式 1.先定义Style: <style name="RadingStyle" parent="@android:sty ...

  4. Android实现自定义带文字和图片的Button

    Android实现自定义带文字和图片的Button 在Android开发中经常会需要用到带文字和图片的button,下面来讲解一下常用的实现办法. 一.用系统自带的Button实现 最简单的一种办法就 ...

  5. Android Studio 自定义debug签名文件keystore

    Android Studio 自定义debug签名文件keystore

  6. Android读取自定义View属性

    Android读取自定义View属性 attrs.xml : <?xml version="1.0" encoding="utf-8"?> < ...

  7. Android之自定义画图文字动画

    结构: BaseView: package com.caiduping.canvas; import android.content.Context; import android.graphics. ...

  8. Android 三档自定义滑动开关,禁止点击功能的实现,用默认的seekbar组件实现

    android三档自定义滑动开关,禁止点击功能的实现,普通开关网上有很多例子,三档滑动开关的则找了整天都没有相关例子,开始用普通开关的源码修改了自己实现了一个类,但效果不如人意,各种边界情况的算法很难 ...

  9. Android 自定义View修炼-【2014年最后的分享啦】Android实现自定义刮刮卡效果View

    一.简介: 今天是2014年最后一天啦,首先在这里,我祝福大家在新的2015年都一个个的新健康,新收入,新顺利,新如意!!! 上一偏,我介绍了用Xfermode实现自定义圆角和椭圆图片view的博文& ...

随机推荐

  1. 阿旭的php开发环境

    过了几年,php技术也日新月异,变化也挺多.哪么对于开发者,感觉有一些简单的方法,写下来,以备以后使用.我觉得吧,Linux写php不如windows写php,调试,查资料和各种功能比较全面,而lin ...

  2. shell脚本积累

    统计当前目录下文件夹的大小 for d in $(ls) do du -sh ./$d done 获取之前日期date  +"%Y%m%d" -d  "-n days&q ...

  3. Linq常用

    1.左关联查询var lst = from m in db.信息          join d in db.明细信息          on m.单号 equals d.单号 into mi     ...

  4. 【BZOJ】【2190】【SDOI2008】仪仗队

    欧拉函数/莫比乌斯函数 Orz iwtwiioi 这个嘛……很明显在同一条线上的两个点一定是满足  x1*k=x2,y1*k=y2,(好吧这个表示方式有点傻逼,懂得就好了)那么这条线上的点只有第一个会 ...

  5. 剑指offer--面试题5

    到现在为止,看过的书+代码有一定量了,并且也参加了个比赛,给自己的总体感觉:编程需要的是灵活的头脑,书里的东西只是讲个规则.思想,其实际实现可以千差万别!   潜在的规则+灵活的思维 = 程序! 在做 ...

  6. BT5之Metasploit[MSF]连接postgresql数据库

    1,先查看postgresql的端口,默认是自动开启的,端口7337 .   root@bt:~# netstat -tnpl |grep postgres tcp        0      0 1 ...

  7. Mac OS X中MacPorts的安装使用备忘

    Mac下面除了用dmg.pkg来安装软件外,比较方便的还有用MacPorts来帮助你安装其他应用程序,跟BSD中的ports道理一样.MacPorts就像apt-get.yum一样,可以快速安装些软件 ...

  8. unity3d 射线扫描 忽略图层

    原地址:http://blog.csdn.net/w88193363/article/details/38331205 函数说明 static RaycastHit2D[] RaycastAll(Ve ...

  9. Building Plugins for iOS

    This page describes Native Code Plugins for the iOS platform. Building an Application with a Native ...

  10. PHP Zend Studio9.0怎么把代码搞成和服务器端的同步(就是直接在服务器端修改)

    Zend Studio 可以直接通过Remote System的方式直接连接服务器端的代码,就是可以直接修改服务器端的代码,不过修改的时间小心点,修改就会立即生效的. 选择Remote Systems ...