1.使用XBanner框架之前,需要先导入其引用:在build.gradle文件中加入依赖,在dependencies下 代码如下: compile 'com.xhb:xbanner:1.2.2'
implementation 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
由于XBanner中有可能从网络加载图片,因此也需要导入一些图片加载框架的依赖,如Glide,代码如下:
compile 'com.github.bumptech.glide:glide:3.7.0'
2.---------------------------布局文件-------------------------------------------
xmlns:app="http://schemas.android.com/apk/res-auto"
<com.stx.xhb.xbanner.XBanner
android:id="@+id/banner"
android:layout_width="match_parent"
android:layout_height="200.0dip"
app:AutoPlayTime="2000"
app:pointsContainerBackground="#44AAAAAA"
app:pointsPosition="RIGHT"
app:tipTextColor="#FFFFFFFF"
app:tipTextSize="16.0sp" ></com.stx.xhb.xbanner.XBanner>
3 ============代码=======================
private XBanner banner;
private List<DataDataBean.ResultBean.ListBean> list1;
List<String> list = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
banner = (XBanner) findViewById(R.id.banner);
// 初始化XBanner中展示的数据
getImgData();
}
private void getImgData() {
String path = "http://v.juhe.cn/weixin/query?key=5ae347d69818dceea1762f4ef7fc8264&pno=1";
NetDataUtil.getData(path, MainActivity.this, new JsonCallBack() {
@Override
public void getJson(String json) {
Gson gson = new Gson();
DataDataBean dataDataBean = gson.fromJson(json, DataDataBean.class);
list1 = dataDataBean.getResult().getList();
for (int i=0;i<list1.size();i++){
list.add(list1.get(i).getFirstImg());
}
主要:
banner.setData(list,null);
banner.setmAdapter(new XBanner.XBannerAdapter() {
@Override
public void loadBanner(XBanner banner, View view, int position) {
ImageLoader.getInstance().displayImage(list.get(position), (ImageView) view, ImageLoaderUtil.shape());
}
});
}
});
}
详见博客:http://www.cnblogs.com/itgungnir/p/6210891.html