依赖:

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

c7034625652a805959679e52d29943a9.png

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐