Android中banner的使用步骤
程序员文章站
2022-06-19 22:41:17
step 1.依赖banner
gradle
dependencies{
compile 'com.youth.banner:banner:1.4.9'...
step 1.依赖banner
gradle dependencies{ compile 'com.youth.banner:banner:1.4.9' //最新版本 }
或者引用本地lib
compile project(':banner')
step 2.添加权限到你的 androidmanifest.xml
<!-- if you want to load images from the internet --> <uses-permission android:name="android.permission.internet" /> <!-- if you want to load images from a file or from the internet --> <uses-permission android:name="android.permission.read_external_storage" />
step 3.在布局文件中添加banner,可以设置自定义属性
!!!此步骤可以省略,直接在activity或者fragment中new banner(); <com.youth.banner.banner xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/banner" android:layout_width="match_parent" android:layout_height="高度自己设置" />
step 4.重写图片加载器
public class glideimageloader extends imageloader { @override public void displayimage(context context, object path, imageview imageview) { /** 注意: 1.图片加载器由自己选择,这里不限制,只是提供几种使用方法 2.返回的图片路径为object类型,由于不能确定你到底使用的那种图片加载器, 传输的到的是什么格式,那么这种就使用object接收和返回,你只需要强转成你传输的类型就行, 切记不要胡乱强转! */ eg: //glide 加载图片简单用法 glide.with(context).load(path).into(imageview); //picasso 加载图片简单用法 picasso.with(context).load(path).into(imageview); //用fresco加载图片简单用法,记得要写下面的createimageview方法 uri uri = uri.parse((string) path); imageview.setimageuri(uri); } //提供createimageview 方法,如果不用可以不重写这个方法,主要是方便自定义imageview的创建 @override public imageview createimageview(context context) { //使用fresco,需要创建它提供的imageview,当然你也可以用自己自定义的具有图片加载功能的imageview simpledraweeview simpledraweeview=new simpledraweeview(context); return simpledraweeview; } }
step 5.在activity或者fragment中配置banner
--------------------------简单使用------------------------------- @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); banner banner = (banner) findviewbyid(r.id.banner); //设置图片加载器 banner.setimageloader(new glideimageloader()); //设置图片集合 banner.setimages(images); //banner设置方法全部调用完毕时最后调用 banner.start(); } --------------------------详细使用------------------------------- @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); banner banner = (banner) findviewbyid(r.id.banner); //设置banner样式 banner.setbannerstyle(bannerconfig.circle_indicator_title); //设置图片加载器 banner.setimageloader(new glideimageloader()); //设置图片集合 banner.setimages(images); //设置banner动画效果 banner.setbanneranimation(transformer.depthpage); //设置标题集合(当banner样式有显示title时) banner.setbannertitles(titles); //设置自动轮播,默认为true banner.isautoplay(true); //设置轮播时间 banner.setdelaytime(1500); //设置指示器位置(当banner模式中有指示器时) banner.setindicatorgravity(bannerconfig.center); //banner设置方法全部调用完毕时最后调用 banner.start(); } -----------------当然如果你想偷下懒也可以这么用-------------------- @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); banner banner = (banner) findviewbyid(r.id.banner); banner.setimages(images).setimageloader(new glideimageloader()).start(); }
step 6.(可选)增加体验
//如果你需要考虑更好的体验,可以这么操作 @override protected void onstart() { super.onstart(); //开始轮播 banner.startautoplay(); } @override protected void onstop() { super.onstop(); //结束轮播 banner.stopautoplay(); }
以上所述是小编给大家介绍的android中banner的使用步骤,希望对大家有所帮助
推荐阅读
-
Android中替换WebView加载网页失败时的页面
-
PHP5中使用MySQLi扩展的小例子
-
Android中系统默认输入法设置的方法(输入法的显示和隐藏)
-
asp.net中System.Timers.Timer的使用方法_javascript技巧
-
为什么无法使用php中mysqli的准备语句进行数据库中数据的查询(绑定参数或者绑定结果),项目急用!该如何处理
-
7种形式的Android Dialog使用实例
-
Android string.xml中的替换方法
-
Android中EditText光标在4.0中的bug及解决方法
-
Android中传递对象的三种方法的实现
-
ASP.NET MVC中图表控件的使用方法