`
bcyy
  • 浏览: 1829689 次
文章分类
社区版块
存档分类
最新评论

Android简单的广告控件View

 
阅读更多

在布局文件中引用此View控件即可。

  1. publicclassGGViewextendsView{
  2. intCOMPONENT_WIDTH;//该控件宽度
  3. intCOMPONENT_HEIGHT;//该控件高度
  4. booleaninitflag=false;//是否要获取控件的高度和宽度标志
  5. staticBitmap[]bma;//需要播放的图片的数组
  6. Paintpaint;//画笔
  7. int[]drawablesId;//图片ID数组
  8. intcurrIndex=0;//图片ID数组下标,根据此变量画图片
  9. booleanworkFlag=true;//播放图片线程标志位
  10. publicGGView(Contextfather,AttributeSetas){//构造器
  11. super(father,as);
  12. drawablesId=newint[]{//初始化图片ID数组
  13. R.drawable.adv1,//将需要播放的图片ID放于此处即可
  14. R.drawable.adv2,R.drawable.adv3,};
  15. bma=newBitmap[drawablesId.length];//创建存放图片的数组
  16. initBitmaps();//调用初始化图片函数,初始化图片数组
  17. paint=newPaint();//创建画笔
  18. paint.setFlags(Paint.ANTI_ALIAS_FLAG);//消除锯齿
  19. newThread(){//创建播放图片线程
  20. publicvoidrun(){
  21. while(workFlag){
  22. currIndex=(currIndex+1)%drawablesId.length;//改变ID数组下标值
  23. GGView.this.postInvalidate();//绘制
  24. try{
  25. Thread.sleep(3000);//休息三秒
  26. }catch(InterruptedExceptione){
  27. e.printStackTrace();
  28. }
  29. }
  30. }
  31. }.start();//启动线程
  32. }
  33. publicvoidinitBitmaps(){//初始化图片函数
  34. Resourcesres=this.getResources();//获取Resources对象
  35. for(inti=0;i<drawablesId.length;i++){
  36. bma[i]=BitmapFactory.decodeResource(res,drawablesId[i]);
  37. }
  38. }
  39. publicvoidonDraw(Canvascanvas){//绘制函数
  40. if(!initflag){//第一次绘制时需要获取宽度和高度
  41. COMPONENT_WIDTH=this.getWidth();//获取view的宽度
  42. COMPONENT_HEIGHT=this.getHeight();//获取view的高度
  43. initflag=true;
  44. }
  45. intpicWidth=bma[currIndex].getWidth();//获取当前绘制图片的宽度
  46. intpicHeight=bma[currIndex].getHeight();//获取当前绘制图片的高度
  47. intstartX=(COMPONENT_WIDTH-picWidth)/2;//得到绘制图片的左上角X坐标
  48. intstartY=(COMPONENT_HEIGHT-picHeight)/2;//得到绘制图片的左上角Y坐标
  49. canvas.drawARGB(255,200,128,128);//设置背景色
  50. canvas.drawBitmap(bma[currIndex],startX,startY,paint);//绘制图片
  51. }
  52. }
分享到:
评论

相关推荐

    android 自定义控件与特效

    Android 自定义控件与特效 1. 自定义属性 2. 自定义View 3. 动态广告控件 4. 时钟控件 ...

    Android代码-一个Android文字轮播控件,实现了可垂直跑、可水平跑的跑马灯。

    Android文字轮播控件 现在的绝大数APP特别是类似淘宝京东等这些大型APP都有文字轮播界面,实现循环轮播多个广告词等功能;这种控件俗称“跑马灯”,而TextBannerView已经实现了可垂直跑、可水平跑的跑马灯了。 效果...

    Android自定义控件实现优雅的广告轮播图

    今天给大家带来一个新的控件–轮播图,网上已经有很多这类的博客来讲解如何实现的,那么我的这个有哪些特点呢?或是说有哪些不同呢? 满足了轮播图的基本要求,循环滑动,在最后一张切到第一张时可以平稳的过渡 简洁...

    Android自定义控件实现简单的轮播图控件

    最近要做一个轮播图的效果,网上看了几篇文章,基本上都能找到...指示器我们可以用一个线性布局来根据要展示的轮播图设置显示的View,我们要做这样的一个控件没有什么特殊的效果,其实就是两个控件的组合,只是我们要

    ViewPager自动滚动效果、Android 轮播图 广告滚动效果

    自定义控件,两行代码搞定一个轮播图, 有什么问题欢迎留言!

    Android-LoopView-轮转广告大图控件.zip

    LoopView 是一个强大的轮转大图控件,并且提供了许多配置方法来达到您的显示效果和需求。github地址:https://github.com/xuehuayous/Android-LoopView介绍博客地址:...

    浅谈Android应用内悬浮控件实践方案总结

    在工作中遇到一个需求,需要在整个应用的上层悬浮显示控件,目标效果如下图: 首先想到的是申请悬浮窗权限,OK~ 打开搜索引擎,映入眼帘的并不是如何申请,而是“Android 悬浮窗权限各机型各系统适配大全、Android...

    Android实现自定义轮播图片控件详解

    首先上效果图 实现原理 要完成一个轮播图片,首先想到的应该是使用ViewPager来实现。ViewPager已经有了滑动的功能,我们只要让它自己滚动。再加上下方的小圆点就行了。...import android.support.v4.view.V

    Android客户端实现图片轮播控件

    本文和大家一起写一个Android图片轮播控件,供大家参考,具体内容如下 1. 轮播控件的组成部分  我们以知乎日报Android客户端的轮播控件为例,分析一下轮播控件的主要组成:   首先我们要有用来显示图片的View对象...

    android WebView预加载

    这时我们利用启动页或引导页或中间的广告页的时间来预加载webview,利用View.gone,View.visible来实现控件类的隐藏与显示,这样在启动后得到的主页就是一个已经加载好的页面了。此例中加载新浪这样的比较大的网站,...

    Android新闻广告条滚动效果

    项目中需要用到类似公告栏的控件,能用的基本不支持多行显示,于是只好自己动手,苦于没有自定义过一个像样的控件,借鉴Android公告条demo,实现了多行向上滚动的控件。在原控件基础之上添加如下功能:  •传入数据...

    Notes-bottom弹框、滚动广告、广告倒计时等自定义控件.zip

    广告倒计时View使用方法_布局文件中使用_  android:id="@ id/fragment_count_down"  android:layout_width="200dp"  android:layout_height="200dp"  android:layout_centerInParent="true"  app:...

    Android实现自定义轮播图片控件示例

    要完成一个轮播图片,首先想到的应该是使用ViewPager来实现。ViewPager已经有了滑动的功能,我们只要让它自己滚动。再加上下方的小圆点就行了。所以我们本次的自定义控件就是由...import android.support.v4.view.Vie

    Android自定义图片轮播Banner控件使用解析

    图片轮播控件,可以说是每个App基本上都会用到的。它可以用来动态的展示多个图片,之前写过两篇博客:实现ViewPager无限循环的方式一和实现ViewPager无限循环的方式二,在这两篇博客中,分析了两种实现ViewPager无限...

    Android 知乎广告效果实现代码

    肯定要自定义view了,一个类似imageView的控件,还要给它一个值用来指定广告图片的显示位置。 问题: 1.图片如何在范围内(单个item范围)上下移动,如窗户一般,后面的图是可以动的,但是窗户是固定的。 2.图片移动的...

    Android UI实现广告Banner轮播效果

    本篇博客要分享的一个效果是实现广告Banner轮播效果,这个效果也比较常见,一些视频类应用就经常有,就拿360影视大全来举例吧:   用红框框住的那个效果就是小巫今天要分享的,先来思考一下会用到什么控件?有什么...

    MZBannerView-仿魅族BannerView,图片轮播控件,支持多种模式切换:普通ViewPager使用,普通Banner使用,仿魅族Banner使用。.zip

    Demo APKgif图片有点模糊,可以扫描下方二维码下载APK体验相关博客ViewPager系列之 仿魅族应用的广告BannerView更新日志v1.1.1 : 增加按住Banner 停止轮播,松开开始自动轮播的功能v1.1.0 : fix 在从网上获取数据...

    Android ViewPager实现轮播图效果

    PagerAdapter主要是viewpager的适配器,而viewPager则也是在android.support.v4扩展包中新添加的一个强大的控件,可以实现控件的滑动效果,比如咱们在软件中常见的广告栏的滑动效果,用viewPager就可以实现。

    Android实现基于ViewPager的无限循环自动播放带指示器的轮播图CarouselFigureView控件

    最近用到需要无限轮播自动播放的轮播轮播图,网上感觉都有这样那样的问题,于是自己写了一个通用的控件CarouselFigureView。 特点: 1.可以轮播view可以自己定义,不一定是要是ImageView2.指示器默认显示,但是可以...

    java安卓仿微信聊天软件源码-AndroidProjectsCollection:搜集整理的一些好的android开源项目

    一、酷炫的view控件 1、分离式的 Slider 效果,类似 Uber 选择车型的控件,可用的场景相当多。 2、Material Design 风格的菜单展示方式,很像 Telegram 里的菜单风格。 3、雾化擦除效果,可以做出来一些好玩儿的交互...

Global site tag (gtag.js) - Google Analytics