使用ConvenientBanner时页面第一次显示总会显示最后一页

来源:互联网 发布:c语言编程之道 pdf 编辑:程序博客网 时间:2024/05/29 16:48

问题:

ConvenientBanner是比较常用的和很多人使用的广告轮播的第三方控件.本身控件也是很好使用的.感谢作者先~~.
今天使用时发现一个问题.情况是这样的.使用其来显示启动界面(其实就是懒得自己去写个指示器),当然启动页这里是不要求可以循环切换,而且切换到最后一页后就要关闭然后进入程序了.

//设置的代码ViewUtil.setBanner(mCbBanner, new SplashBannerCreator(), itemList);mCbBanner.setCanLoop(false);

本身是没有任何问题的,但是发现了运行时显示界面时总会自己跳到最后一页,但是程序中使用的广告轮播没有任何问题!不会跳到第一页.我就奇了怪了.哪里错了?(此时setCurrentItem()是无效的)


解决方案

通过一番的排查,发现一个奇怪的现象.当这种情况下设置时,是正常的.

//设置的代码ViewUtil.setBanner(mCbBanner, new SplashBannerCreator(), itemList);mCbBanner.setCanLoop(true);

但是一旦设置false就出会出现上面的问题了.那么我就尝试了一下这样设置

mCbBanner.setCanLoop(true);//设置的代码ViewUtil.setBanner(mCbBanner, new SplashBannerCreator(), itemList);mCbBanner.setCanLoop(false);

结果完全正常了,页面不再会显示时直接显示最后一页,现在是从第一页开始显示了.

感觉这应该是作者不小心没有注意的bug,而查了一下网上使用过的资料,基本上没有人会提到这个问题,可能是大部分都是用来显示轮播的广告都setCanLoop(true)而没有一开始就设置为false的,所以也就没有人遇到这个问题.

3 0
原创粉丝点击