zoukankan      html  css  js  c++  java
  • XBanner的简单使用轮播

    导入依赖

        implementation 'jp.wasabeef:glide-transformations:3.0.1'
        implementation 'com.xhb:xbanner:1.2.2'
        implementation 'com.nineoldandroids:library:2.4.0'

    XBanner控件的部分属性

    属性名属性说明属性值
    isAutoPlay 是否支持自动轮播 boolean类型,默认为true
    autoPlayTime 图片轮播事件间隔 int类型,默认5000ms
    pointNormal 指示器未选中时的状态 drawable类型,不指定的话使用默认状态点
    pointSelect 指示器选中时的状态 drawable类型,不指定的话使用默认状态点
    pointsVisible 是否显示指示器 boolean类型,默认为true
    pointsPosition 指示点位置 CENTER、LEFT、RIGHT,默认CENTER
    pointsContainerBackground 指示器条背景 color类型、drawable类型、mipmap类型等
    pointContainerPosition 指示器条位置 TOP、BOTTOM,默认BOTTOM
    pointContainerLeftRightPadding 指示点容器左右内间距 dimension类型,默认10.0dip
    pointTopBottomPadding 指示点上下内间距 dimension类型,默认6.0dip
    pointLeftRightPadding 指示点左右内间距 dimension类型,默认3.0dip
    tipTextColor 提示文字的颜色 reference类型
    tipTextSize 提示文字的大小 dimension类型,默认10.0dp

    布局代码:

                <com.stx.xhb.xbanner.XBanner
                    android:id="@+id/fragment_curricula_lunbo"
                    android:layout_width="match_parent"
                    android:layout_height="200dp"
                    android:layout_below="@+id/layout">
    
                </com.stx.xhb.xbanner.XBanner>

    Activity:

     // 初始化XBanner中展示的数据
            final ArrayList<String> images = new ArrayList<>();
            for (int i = 0; i <homeBanner.size() ; i++) {
                images.add(homeBanner.get(i).getBannerUrl());
            }
    
    
            // 为XBanner绑定数据
            fragment_curricula_lunbo.setData(images, null);
            // XBanner适配数据
            fragment_curricula_lunbo.setmAdapter(new XBanner.XBannerAdapter() {
                @Override
                public void loadBanner(XBanner banner, View view, int position) {
                    Glide.with(getActivity()).load(images.get(position)).into((ImageView) view);
                }
            });
            // 设置XBanner的页面切换特效
            fragment_curricula_lunbo.setPageTransformer(Transformer.Default);
            // 设置XBanner页面切换的时间,即动画时长
            fragment_curricula_lunbo.setPageChangeDuration(1000);

    Activity生命周期联动:

     @Override
        public void onResume() {
            super.onResume();
            fragment_curricula_lunbo.startAutoPlay();
        }
    
        @Override
        public void onStop() {
            super.onStop();
            fragment_curricula_lunbo.stopAutoPlay();
        }
  • 相关阅读:
    【TS】535- 7个超好用的 TypeScript 新功能
    【学习】一起加入重学 TypeScript 学习小组
    17.5W秒级交易峰值下的混合云弹性架构之路
    微服务架构:spring cloud之服务注册和服务发现
    消息队列服务RabbitMQ 和Kafka对比
    微服务架构:spring cloud简介
    2016 年度码云热门项目排行榜 TOP 10
    Netflix Conductor : 一个微服务的编排器
    Java 9的这一基本功能,你可能从未听过
    使用 Docker 搭建 Java Web 运行环境
  • 原文地址:https://www.cnblogs.com/SongYongQian/p/8805749.html
Copyright © 2011-2022 走看看