android 第三方banner,Android第三方框架XBanner轮播简单使用
依赖:implementation 'com.github.xiaohaibin:XBanner:1.6.1'大Model下:maven { url 'https://jitpack.io' }allprojects {repositories {google()jcenter()maven { url 'https://jitpack.io' }}}权限:布局:代码:/*** 网络请求下来的js
依赖:
implementation 'com.github.xiaohaibin:XBanner:1.6.1'
大Model下:
maven { url 'https://jitpack.io' }
allprojects {
repositories {
google()
jcenter()
maven { url 'https://jitpack.io' }
}
}
权限:
布局:
代码:
/**
* 网络请求下来的json数据
*/
public void getBannerData(String banner) {
/**
* 解析json数据赋值给XBanner
*/
Gson gson = new Gson();
MyBanner myBanner = gson.fromJson(banner, MyBanner.class);
final Listresult = myBanner.getResult();
/**
* 因为我数据请求下来在子线程,所以用的runOnUiThread更新的UI效果
*/
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
//集合设置给XBanner
xBanner.setData(result, null);
//加载图片
xBanner.loadImage(new XBanner.XBannerAdapter() {
@Override
public void loadBanner(XBanner banner, Object model, View view, int position) {
Glide.with(getActivity()).load(result.get(position).getImageUrl()).into((ImageView) view);
//延迟时间
banner.setPageChangeDuration(3000);
}
});
/**
* 点击跳转传值
*/
xBanner.setOnItemClickListener(new XBanner.OnItemClickListener() {
@Override
public void onItemClick(XBanner banner, Object model, View view, int position) {
Intent intent = new Intent(getActivity(), WebActivity.class);
intent.putExtra("url", result.get(position).getJumpUrl());
startActivity(intent);
}
});
}
});
}
XBanner属性详解:https://blog.csdn.net/qq_40543575/article/details/79549286

更多推荐



所有评论(0)