Android_xbanner的使用方法

本文介绍如何使用XBanner轮播图组件实现图片轮播功能,包括添加依赖、配置权限、布局设置及初始化、图片加载、监听事件等步骤,并提供自定义属性说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


基本使用:
1.添加Gradle依赖

dependencies {
    compile 'com.xhb:xbanner:1.1.2'
}
2.在清单文件中添加网络权限

<uses-permission android:name="android.permission.INTERNET" />
3.在布局文件中添加XBanner

    <com.stx.xhb.xbanner.XBanner
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/banner_1"
        android:layout_width="match_parent"
        android:layout_height="180dp"
        app:pointsPosition="CENTER"
        app:AutoPlayTime="3000"
        app:pointsContainerBackground="#44aaaaaa"
        app:pointNormal="@drawable/shape_noraml"
        app:pointSelect="@drawable/shape_selected"/>
4.在Activity或者Fragment中配置

初始化:直接传入视图集合进行初始化 这是我写死的图片集合
        List<String> imgesUrl = new ArrayList<>();
        imgesUrl.add("http://img3.fengniao.com/forum/attachpics/913/114/36502745.jpg");
        imgesUrl.add("http://imageprocess.yitos.net/images/public/20160910/99381473502384338.jpg");
        imgesUrl.add("http://imageprocess.yitos.net/images/public/20160910/77991473496077677.jpg");
        imgesUrl.add("http://imageprocess.yitos.net/images/public/20160906/1291473163104906.jpg");
        mBannerNet.setData(imgesUrl);

5.加载图片

可根据自己项目需要使用相应的图片加载工具进行加载图片,此处使用Glide,进行加载,可配置占位图等
 mBannerNet.setmAdapter(this);
 @Override
    public void loadBanner(XBanner banner, View view, int position) {
        Glide.with(this).load(imgesUrl.get(position)).into((ImageView) view);
    }

6.监听图片 item 的单击事件

 mBannerNet.setOnItemClickListener(new XBanner.OnItemClickListener() {
            @Override
            public void onItemClick(XBanner banner, int position) {
                Toast.makeText(MainActivity.this, "点击了第"+position+"图片", Toast.LENGTH_SHORT).show();
            }
        });
自定义属性说明
属性名	属性说明	属性值
isAutoPlay	是否支持自动轮播	boolean类型,默认为true
AutoPlayTime	图片轮播时间间隔	int值,默认为5s
pointNormal	指示器未选中时状态点	drawable,不设置的话为默认状态点
pointSelect	指示器选中时状态点	drawable,不设置的话为默认状态点
pointsVisibility	是否显示指示器	boolean类型,默认为true
pointsPosition	指示点显示位置	LEFT、CENTER、RIGHT类型,默认为CENTER
pointsContainerBackground	指示器背景	可自定义设置指示器背景
pointContainerPosition	指示器显示位置	TOP、BOTTOM类型,默认未BOTTOM
pointContainerLeftRightPadding	指示点容器左右内间距	dimension,默认为10dp
pointTopBottomPadding	指示点上下内间距	dimension,默认为6dp
pointLeftRightPadding	指示点左右内间距	dimension,默认为3dp

整体就是这样

public class MainActivity extends AppCompatActivity implements XBanner.XBannerAdapter {

    private List<String> bannerarr;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        XBanner mBannerNet = findViewById(R.id.banner_x);
        bannerarr = new ArrayList<>();
        bannerarr.add("https://p1.pstatp.com/obj/573b00027992d9665a44");
        bannerarr.add("https://p1.pstatp.com/obj/551f00049bcedf3213fa");
        bannerarr.add("https://p3.pstatp.com/obj/383e00044b4cc3518d2d");
        bannerarr.add("https://p3.pstatp.com/obj/42a30007b8ae7b956804");
        mBannerNet.setData(bannerarr,null);
        // 设置XBanner的页面切换特效
        mBannerNet.setPageTransformer(Transformer.Default);
        // 设置XBanner页面切换的时间,即动画时长
        mBannerNet.setPageChangeDuration(2000);
        mBannerNet.setmAdapter(this);
    }

    @Override
    public void loadBanner(XBanner banner, View view, int position) {
        Glide.with(this).load(bannerarr.get(position)).into((ImageView) view);
    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值