• Stars
    star
    4,777
  • Rank 8,821 (Top 0.2 %)
  • Language
    Java
  • Created almost 10 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Simple and convenient banner, loop viewpager with 3D effects

Android Gems

ConvenientBanner

通用的广告栏控件,让你轻松实现广告头效果。支持无限循环,可以设置自动翻页和时间(而且非常智能,手指触碰则暂停翻页,离开自动开始翻页。你也可以设置在界面onPause的时候不进行自动翻页,onResume之后继续自动翻页),并且提供多种翻页特效。 对比其他广告栏控件,大多都需要对源码进行改动才能加载网络图片,或者帮你集成不是你所需要的图片缓存库。而这个库能让有代码洁癖的你欢喜,不需要对库源码进行修改你就可以使用任何你喜欢的网络图片库进行配合。

Demo

用模拟器运行的效果,鼠标拨动和模拟器太卡等原因,实际效果比效果图更炫哦~~

demo是用Module方式依赖,你也可以使用gradle 依赖:

    implementation 'com.bigkoo:convenientbanner:2.1.5'//地址变小写了,额。。。
    implementation 'androidx.recyclerview:recyclerview:1.0.0+'

//   compile 'com.bigkoo:ConvenientBanner:2.1.4'//地址变ConvenientBanner 大写了,额。。。
//compile 'com.bigkoo:convenientbanner:2.0.5'旧版
Config in xml
<com.bigkoo.convenientbanner.ConvenientBanner
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/convenientBanner"
        android:layout_width="match_parent"
        android:layout_height="200dp"
        app:canLoop="true" //控制循环与否
/>

config in java code

//自定义你的Holder,实现更多复杂的界面,不一定是图片翻页,其他任何控件翻页亦可。
convenientBanner.setPages(
                new CBViewHolderCreator() {
                    @Override
                    public LocalImageHolderView createHolder(View itemView) {
                        return new LocalImageHolderView(itemView);
                    }

                    @Override
                    public int getLayoutId() {
                        return R.layout.item_localimage;
                    }
                }, localImages)
                //设置两个点图片作为翻页指示器,不设置则没有指示器,可以根据自己需求自行配合自己的指示器,不需要圆点指示器可用不设
//                .setPageIndicator(new int[]{R.drawable.ic_page_indicator, R.drawable.ic_page_indicator_focused})
                .setOnItemClickListener(this);
                //设置指示器的方向
//                .setPageIndicatorAlign(ConvenientBanner.PageIndicatorAlign.ALIGN_PARENT_RIGHT)
//                .setOnPageChangeListener(this)//监听翻页事件
                ;

public class LocalImageHolderView implements Holder<Integer>{
    private ImageView imageView;
    @Override
    public View createView(Context context) {
        imageView = new ImageView(context);
        imageView.setScaleType(ImageView.ScaleType.FIT_XY);
        return imageView;
    }

    @Override
    public void UpdateUI(Context context, final int position, Integer data) {
        imageView.setImageResource(data);
    }
}

Thanks

更新说明

v2.1.5

  • androidx

v2.1.4

  • 数据为空的时候异常处理。

v2.1.3

  • notifyDataSetChange的时候,回到0的位置。

v2.1.2

  • 可以setlayoutManager了。

v2.1.1

  • 内部实现改为由自定义的LinearSnapHelper改为PagerSnapHelper。

v2.1.0

  • 修复不设置指示器就报错问题

v2.0.9

  • 暴露canLoop的API动态控制

v2.0.8

  • 加入作为列表顶部header demo,修复loop模式下第一次的指示器图标不选中问题

v2.0.7

  • 加入与PhotoView,Fresco配合变为网络图片预览控件例子,新增获取和设置当前position api

v2.0.6

  • 使用RecycleView进行重新实现,api基本不改变,加入xml配置翻页时间

v2.0.5

  • ViewPager实现方式

More Repositories

1

Android-AlertView

仿iOS的AlertViewController
Java
1,389
star
2

Android-SVProgressHUD

SVProgressHUD For Android
Java
653
star
3

Android-QuickSideBar

帮助快速查阅对应分组的侧边栏
Java
632
star
4

Android-PictureTagView

仿nice图片上打标签控件
Java
612
star
5

Android-SnappingStepper

A beautiful UI control with flexible control of the number of changes.
Java
272
star
6

Android-MVVMFramework

Using Databing and Retrofit to build a fast MVVM framework
Java
176
star
7

iOS-RatingBar

iOS版的评分控件
Swift
105
star
8

iOS-ViewPagerIndicator

Paging indicator widgets,iOS版的分页指示器,可以配合UIScrollView使用完成分页控制
Swift
67
star
9

Android-SimpleView

项目常用自定义控件集合
Java
32
star
10

iOS-AlbumView

iOS的swift版相册功能,左右拨动切换图片,手势放大缩小,支持单击触发自定义事件
Swift
20
star
11

huobipro

flutter仿火币客户端
Dart
18
star
12

Android-Kata

build android project fast,这可能是最快速的android基础搭建框架,世间皆是套路
Java
17
star
13

Android-TagFlexboxLayout

基于FlexboxLayout的流式布局控件,比FlowLayout好用
Java
16
star
14

GradleDemo

通过gradle进行多渠道打包的Demo
Java
8
star
15

KataDemo-androidlite

Kata框架的Demo账房先生记账软件
Java
8
star
16

flutter_kata

Quickly build a framework for flutter application
Dart
5
star
17

iOS-GuideView

swift写的引导界面
Swift
4
star
18

AlabomBackStage

俄罗斯外贸平台Alabom的管理后台系统
Java
4
star
19

NightLife

dribbble design - NightLife for flutter parallax effect
Dart
2
star
20

NaturalHome

demo of flutter_kata
Dart
1
star