LoopPager,一个使用简单的轮转图控件

LoopPager


这是一个Android轮转图控件,可作为banner,也可作为引导页。图片能够从网络中获取,也能使用本地的资源文件。
吐槽一句,取名字真的是很麻烦啊~
下面看截图:

looppager
looppager

截图掉帧,实际很流畅

matters needing attention

该控件可最低支持到API14

该控件依赖了以下两个library,使用者无需在项目里再次添加 (Don't need to add)。
compile 'com.android.support:appcompat-v7:23.4.0'  
compile 'com.github.bumptech.glide:glide:3.7.0'    是的图片加载是用glide,所以可以加载gif哦~

项目地址(如何使用)


https://github.com/550609334/LoopPager

example(示例)

local(从本地加载)

首先需要一个String-Array

<string-array name="imgs">
    <item>@mipmap/img1</item>
    <item>@mipmap/img2r</item>
    <item>@mipmap/img3</item>
    <item>@mipmap/img4</item>
</string-array>

接着只要将这个String-Array引用即可

<com.lzp.looppager.LoopPager
    android:id="@+id/loopPager"
    android:layout_width="match_parent"
    android:layout_height="200dp"
    app:imagesForLocal="@array/imgs"
    >

或者在JAVA代码中设置

 List<Integer> images = new ArrayList<>();
 images.add(R.mipmap.header);
 images.add(R.mipmap.header);
 images.add(R.mipmap.header);
 mLoopPager.setLocalImages(images);

remote(从网络获取)

 List<String> urls = new ArrayList<>();
 urls.add("http://i0.hdslb.com/video/e0/e0814751cf26c9b319ed974d7f3d5f67.jpg");
 urls.add("http://img4.imgtn.bdimg.com/it/u=3252822932,941775074&fm=21&gp=0.jpg");
 urls.add("http://img1.imgtn.bdimg.com/it/u=3547247058,1962251339&fm=21&gp=0.jpg");
 urls.add("http://static.vgtime.com/article/web/150515191332685.jpg");
 mLoopPager.setRemoteImageUrls(urls);

Events(事件)

给了三个事件,点击,长按和选中。

   mLoopPager.setOnClickListener(new LoopPager.OnClickListener() {
        @Override
        public void onClick(int position, ImageView imageView) {

        }

        @Override
        public void longClick(int position, ImageView imageView) {

        }
    });

    mLoopPager.setPagerChangeListener(new LoopPager.PagerChangeListener() {
        @Override
        public void pagerChange(int position) {

        }
    });

More settings(更多设置)


XML

  设置导航标识的颜色
  app:naviColor="#ff9800"  
  设置导航标示所处位置 bottom_center,bottom_left,bottom_right,top_center,top_left,top_right  六个可选      
  app:mPosition="bottom_right"
  设置图片切换等待时间,默认为2000毫秒           
  app:loopDuration="3000"
  设置是否开启导航标识
  app:enableNavi="true"
  设置是否自动切换
  app:loop="true"
  设置导航标识的图形,circle,rectangle,roundRectangle,三种可选,默认圆形
  app:naviShape="circle"
  设置导航标识在圆形状态下的半径
  app:naviRadius="4dp"
  设置导航标识在矩形或圆角矩形状态下的宽高
  app:rectangleWidth="8dp"
  app:rectangleHeight="4dp"

Java Code

Java代码基本对应上面XML中设置的项

  mLoopPager.setEnableNavi(true);
  mLoopPager.setLoop(true);
  mLoopPager.setLoopDuration(3000);
  mLoopPager.setNaviPosition(LoopPager.BOTTOM_RIGHT)
  mLoopPager.setNaviRadius(4);
  mLoopPager.setNaviShape(LoopPager.CIRCLE);
  mLoopPager.setNaviWidthAndHeight(8,4); 

Other

About bugs

如果出现Bug,或者你有什么建议或需求,可以Email连系我。

E-Mail

tracy550609334@gmail.com or 550609334@qq.com

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,820评论 25 708
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,837评论 18 139
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,497评论 0 17
  • 1. 复习口译和口语 2. 口译再完成第四部分,不会的太多了 3. 精听 4. 口语新课 心理到极限了,看会儿电影...
    齐大枣阅读 108评论 0 0
  • 观点:控制好仓位,更大胆的买入 本周行情回顾 总体来说市场依旧保持强势运行的格局。在上周连拉几条阳线之后,我就希望...
    布衣书生走天下阅读 1,266评论 5 24