Xbanner的基本使用

来源:互联网 发布:c语言char怎么输出 编辑:程序博客网 时间:2024/06/05 00:46

1导入依赖

compile 'com.xhb:xbanner:1.2.2'compile 'com.nineoldandroids:library:2.4.0'compile 'com.github.bumptech.glide:glide:3.7.0'compile 'jp.wasabeef:glide-transformations:1.0.6'

2添加权限

<uses-permission android:name="android.permission.INTERNET" />

3.布局文件

<com.stx.xhb.xbanner.XBanner    android:id="@+id/banner"    android:layout_width="match_parent"    android:layout_height="200.0dip"    app:AutoPlayTime="3000"    app:pointsContainerBackground="#44AAAAAA"    app:pointsPosition="RIGHT"    app:tipTextColor="#FFFFFFFF"    app:tipTextSize="16.0sp" />

4.mainactivity中

XBanner banner;ArrayList<String> images;ArrayList<String> titles;

banner = (XBanner) findViewById(R.id.banner);// 初始化XBanner中展示的数据images = new ArrayList<>();titles = new ArrayList<>();
images.add("https://gss1.bdstatic.com/9vo3dSag_xI4khGkpoWK1HF6hhy/baike/w%3D268%3Bg%3D0/sign=e9449e382d9759ee4a5067cd8ac0242b/94cad1c8a786c9179e80a80cc23d70cf3bc75700.jpg");titles.add("这是第1张图片");images.add("http://img.ivsky.com/img/bizhi/co/201711/27/nissan_vmotion2_0-001.jpg");titles.add("这是第2张图片");images.add("http://img.ivsky.com/img/tupian/co/201709/18/zise_huaduo.jpg");titles.add("这是第3张图片");images.add("http://img.ivsky.com/img/tupian/co/201709/16/dahailidehaiguitupian.jpg");titles.add("这是第4张图片");
   // 为XBanner绑定数据banner.setData(images, titles);
// XBanner适配数据banner.setmAdapter(new XBanner.XBannerAdapter() {    @Override    public void loadBanner(XBanner banner, View view, int position) {        Glide.with(MainActivity.this).load(images.get(position)).into((ImageView) view);    }});
// 设置XBanner的页面切换特效,选择一个即可,总的大概就这么多效果啦,欢迎使用banner.setPageTransformer(Transformer.Default);//横向移动
banner.setPageTransformer(Transformer.Alpha); //渐变,效果不明显
banner.setPageTransformer(Transformer.Rotate);  //单页旋转
banner.setPageTransformer(Transformer.Cube);    //立体旋转
banner.setPageTransformer(Transformer.Flip);  // 反转效果
banner.setPageTransformer(Transformer.Accordion); //三角换页
banner.setPageTransformer(Transformer.ZoomFade); // 缩小本页,同时放大另一页
banner.setPageTransformer(Transformer.ZoomCenter); //本页缩小一点,另一页就放大
banner.setPageTransformer(Transformer.ZoomStack); // 本页和下页同事缩小和放大
banner.setPageTransformer(Transformer.Stack);  //本页和下页同时左移
banner.setPageTransformer(Transformer.Depth);  //本页左移,下页从后面出来
banner.setPageTransformer(Transformer.Zoom);  //本页刚左移,下页就在后面

// 设置XBanner页面切换的时间,即动画时长banner.setPageChangeDuration(1000);

//xbanner的点击事件
banner.setOnItemClickListener(new XBanner.OnItemClickListener() {    @Override    public void onItemClick(XBanner banner, int position) {        Toast.makeText(MainActivity.this, "点击了第" + (position + 1) + "张图片", Toast.LENGTH_SHORT).show();    }});

//把xbanner放在生命周期中,随便放
@Overrideprotected void onResume() {    super.onResume();    banner.startAutoPlay();}@Overrideprotected void onStop() {    super.onStop();    banner.stopAutoPlay();}





原创粉丝点击