android引导页自动轮播,用于引导页和轮播图 支持自定义viewpager的adapter,支持自定义圆点显示样式...

GuidView

用于引导页和轮播图

支持自定义viewpager的adapter,支持自定义圆点显示样式

效果图

模拟器比较卡顿,见谅,电脑性能有些差

625332134c6f4d4600884b99daebf603.png

注意

内置的adapter只加载本地资源id和网络图片,若界面样式多变,请自定义adapter,将adapter传入,也可一样使用库内封装好的接口回调

本库使用 鸿洋大神的AutoLayout,基于768x1280 做适配,一定使用px指定圆点的宽高、距下方的距离

引入

1.将其添加到存储库末尾的根build.gradle中:

allprojects {

repositories {

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

}

}

2.添加依赖关系

dependencies {

compile 'com.github.CorruptWood:GuidView:1.0.0'

}

使用

1.本库有4个接口回调:

滑动监听  move 对应 Custom.LEFT Custom.REGIHT 仅仅只分辨出左滑还是右滑,在引导界面,可以设置滑动最后一页时,滑动跳转到主界面,不需要单独添加跳转按钮

interface OnScrollLisntener {

void OnScrollLisntener(int position, int move);

}

同ViewPager的OnPagerChangerListener,便于添加其他需要监听ViewPager变化的控件

interface OnPagerChangerListener {

void onPageScrolled(int position, float positionOffset, int positionOffsetPixels);

void onPageSelected(int position);

void onPageScrollStateChanged(int state);

}

简化版的OnPagerChangerListener,便于添加其他需要监听ViewPager变化的控件

interface OnPageSelectedListener {

void onPageSelected(int position);

}

设置viewPager页面点击事件 比如轮播图点击图片,跳转页面

interface OnViewPagerItemClickListener{ void OnClick(int position); }

2.属性介绍

3.方法介绍

①:获取当前viewpager的索引

public int getCurrentItem() {

return viewPager.getCurrentItem();

}

②: 绑定数据,以及自定义的adapter,数据仅支持资源id和图片路径

public void bindIntengerData(@NonNull List list) {

this.bindData(list, flag, null);

}

public void bindIntengerData(@NonNull List list, PagerAdapter adapter) {

this.bindData(list, flag, adapter);

}

public void bindStringData(@NonNull List list) {

this.bindData(list, !flag, null);

}

public void bindStringData(@NonNull List list, PagerAdapter adapter) {

this.bindData(list, !flag, adapter);

}

③:使用banner,如果需要做banner,必须设置属性 isBanner=true

android:id="@+id/guid_view"

android:layout_width="match_parent"

android:layout_height="360px"         app:dotMaginBottom="30px"              app:dotSize="20px"                    app:showDot="true"

app:dotLayoutHight="30px"             app:dotLayoutShowMode="center"         app:dotMaginLeft="10px"                 app:isBanner="true"

app:dotLayoutWidth="match_parent"/>

在你觉得合适的地方设置 banner切换的时间和开始轮播

public void startBanner() {

this.startBanner(3000);

}

public void startBanner(long delayMillis) {

}

在你觉得合适的地方停止轮播,管理其轮播周期,避免oom

public void stopBanner() {

}

④:其他方法

获取小圆点布局的对象,改变背景等

public void setDotLayoutBackgroundColor(@ColorInt int color) {

}

public LinearLayout getDotLayout() {

}

更多使用请查看示例。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值