MZBannerView

现在的APP Banner大多数千篇一律,前面看到魅族手机上所有魅族自家APP上的Banner效果不错,于是就想着来仿着做一个类似的效果。因此就有了这个库。但是为了使用方便,这个库不仅仅只有仿魅族效果的BannerView 来使用,还可以当作普通的BannerView 来使用,还可以当作一个ViewPager 来使用。使用很方便,具体使用方法和API 请看后面的示例。

Github 地址:https://github.com/pinguo-zhouwei/MZBannerView

MZBannerView 有以下功能:

1 . 仿魅族BannerView 效果。

2 . 当普通Banner 使用

3 . 当普通ViewPager 使用。

4 . 当普通ViewPager使用(有魅族Banner效果)

5 . 仿爱奇艺 APP Banner 效果

Dependency

allprojects {repositories {...maven { url 'https://jitpack.io' }}
}

Step 2. Add the dependency

dependencies {compile 'com.github.pinguo-zhouwei:MZBannerView:v2.0.0'
}

自定义属性

属性名 属性意义 取值
open_mz_mode 是否开启魅族模式 true 为魅族Banner效果,false 则普通Banner效果
canLoop 是否轮播 true 轮播,false 则为普通ViewPager
indicatorPaddingLeft 设置指示器距离左侧的距离 单位为 dp 的值
indicatorPaddingRight 设置指示器距离右侧的距离 单位为 dp 的值
indicatorAlign 设置指示器的位置 有三个取值:left 左边,center 剧中显示,right 右侧显示
middle_page_cover 设置中间Page是否覆盖(真正的魅族Banner效果) true 覆盖,false 无覆盖效果

使用方法

1 . xml 布局文件

<com.zhouwei.mzbanner.MZBannerViewandroid:id="@+id/banner"android:layout_width="match_parent"android:layout_height="200dp"android:layout_marginTop="10dp"app:open_mz_mode="true"app:canLoop="true"app:indicatorAlign="center"app:indicatorPaddingLeft="10dp"/>

2 . activity中代码:

        mMZBanner = (MZBannerView) view.findViewById(R.id.banner);// 设置数据mMZBanner.setPages(list, new MZHolderCreator<BannerViewHolder>() {@Overridepublic BannerViewHolder createViewHolder() {return new BannerViewHolder();}});public static class BannerViewHolder implements MZViewHolder<Integer> {private ImageView mImageView;@Overridepublic View createView(Context context) {// 返回页面布局View view = LayoutInflater.from(context).inflate(R.layout.banner_item,null);mImageView = (ImageView) view.findViewById(R.id.banner_image);return view;}@Overridepublic void onBind(Context context, int position, Integer data) {// 数据绑定mImageView.setImageResource(data);}}

3 .如果是当Banner使用,注意在onResume 中调用start()方法,在onPause中调用 pause() 方法。如果当普通ViewPager使用,则不需要。

 @Overridepublic void onPause() {super.onPause();mMZBanner.pause();//暂停轮播}@Overridepublic void onResume() {super.onResume();mMZBanner.start();//开始轮播}

通过open_mz_modemiddle_page_covercanLoop这3个属性来控制MZBannerView 是用作Banner还是普通ViewPager,能控制多种Banner展示效果:

1 . 魅族Banner 效果,中间Page覆盖两边。

 app:open_mz_mode="true"app:canLoop="true"app:middle_page_cover="true"

2 普通banner 使用。

app:open_mz_mode="false"
app:canLoop="true"

Android Banner相关推荐

  1. android banner动画框架,Android Studio Banner轮播图使用

    现在恰好有个项目需要做个轮播图效果,这个需求也是很常见的需求,于是就做个笔记写一下实现过程 分为加载本地图片和网络图片 加载本地图片 第一步:先在build.gradle中加入banner和glide ...

  2. android banner 高度,Android Banner 的简单使用步骤

    Step 1: 依赖 //Banner implementation 'com.youth.banner:banner:1.4.10' implementation 'com.github.bumpt ...

  3. android banner加载布局,Android知识点之图片轮播控件Banner

    Rate this post 在我们来发Android项目时,经常有图片或者广告的轮播功能的需求,下面将介绍一款Android开发时使用的开源图片轮播控件Banner,同时按序讲解如何使用配置这款控件 ...

  4. 一个很Nice的Android Banner轮播图库

    Android萌新一枚,最近项目中有一个轮播图的需求,网上搜了很多资料,也看了多开源库,但不是bug多就是库不维护.后来在GitHub上找到一个很棒的轮播图–BannerViewPager库推荐个大家 ...

  5. android 炫酷轮播图,一个很Nice的Android Banner轮播图库

    Android小白一枚,最近项目中有一个轮播图的需求,网上搜了很多资料,也看了多开源库,但不是bug多就是库不维护.后来在GitHub上找到一个很棒的轮播图–BannerViewPager库推荐个大家 ...

  6. Android Banner(无限轮播图)控件的简单使用(网络数据OkHttp3)

    一言不合就上图 banner是第三方集成好的直接注入依赖就可以用 老套路先注入依赖: //banner这个版本才是王道(我的studio是2.3.3)compile 'com.youth.banner ...

  7. android banner广告接入,仅涉及技术

    google 广告接入,admob 官网地址: http://developer.android.com/intl/zh-cn/google/play-services/setup.html 配置: ...

  8. android banner阴影,仿照锤子科技官网的banner 3d效果

    以前看到锤子科技官网的banner效果挺好玩的,一直没有研究:今天看到饥人谷,使用jquery给出了一种实现方式:我自己用原生js也实现了一遍.大致原理相同,但算法不同. 我的方法原理,如图所示,假设 ...

  9. android banner指示器高度,Android 广告轮播 -ConvenientBanner 指示器大小、bottomMargin,leftMarfin的修改。...

    在Android开发时,广告轮播我的项目是使用的ConvenientBanner 来实现的,效果也很好.但是有一个很严格的设计师,需要完全按照她的设计来实现,突然发现ConvenientBanner ...

最新文章

  1. 树模型集成学习(Tree Embedding)
  2. strstr和strcchr查找字符串和区别
  3. virsh 网络设置_KVM使用Network Filters进行虚拟机网络管理 | leon的博客
  4. 创建 SSH Keys
  5. 计算机python语言_计算机语言Python解释器
  6. 创业者如何更好地认知世界?
  7. Linux 命令(54)—— trap 命令(builtin)
  8. office2013 应用程序无法正常启动(0xc000007b)
  9. 关于大数据的大数据平台
  10. 异数OS 织梦师-Xnign(四)-- 挑战100倍速Nginx,脚踩F5硬件负载均衡
  11. 使用M0 DesignStart 的样例SoC(example system) - 1 SoC组件
  12. ASCLL UTF-8 GBK URL编码
  13. 《Graphene-SGX: A Practical Library OS for UnmodifiedApplications on SGX (ATC‘17)》笔记
  14. 5分钟搭建私人Java博客系统——Tale
  15. win10更新时强制关机会如何
  16. 西游记中人物对应PMP项目管理中的角色分析
  17. iTerm2终端集成git缩写意思
  18. 故障网络连接故障排除,第2部分:基本网络命令
  19. 解决打不开 xxx.github.io的万能解决方法
  20. 微信小程序图片转发到微信

热门文章

  1. 在Ubuntu 上安装和配置postfix邮箱服务器
  2. KODI软件的下载与简单使用(开启倍速到1.1,1.2,1.3等等或整数倍速)
  3. 用tkinter做一个代码编辑器(语法高亮,直接运行)
  4. mysql 13位时间戳转时间戳_时间戳换算(13位时间戳转换工具 在线)
  5. 时间戳服务器作用,时间戳服务器
  6. 扫雷游戏 (15 分)
  7. 一种利用百分比布局适配所有Android手机屏幕分辨率的方法
  8. 【智能制造】工信部:《国家智能制造标准体系建设指南(2018年版)》(征求意见稿)
  9. 团队项目-初步分工与计划安排
  10. C语言进阶第15式:逻辑运算符分析