banner

1. .依赖banner
dependencies{
    compile 'com.youth.banner:banner:1.4.9'  //最新版本
     compile 'org.xutils:xutils:3.5.0'
     compile 'com.google.code.gson:gson:2.8.1'
     compile 'com.github.bumptech.glide:glide:4.0.0-RC1'
}
2. .添加权限
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
3.代码:
BaseApplication:
import android.app.Application;
import org.xutils.*;
import org.xutils.BuildConfig;
public class BaseApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        x.Ext.init(this);
        x.Ext.setDebug(BuildConfig.DEBUG);
    }
}
Data:
import java.util.List;
public class Data {
    /**
     * code : 200
     * data : {"infos":[{"action":"","action_type":0,"banners":[{"chapter_count":6,"good_alias":"","good_price":"","hybrid_url":"","id":878,"pic":"http://f2.kkmh.com/image/170203/xxgdiyto4.webp","request_id":"-1","special_list_url":"","sub_title":"","target_app_url":"","target_id":1023,"target_package_name":"","target_title":"浪漫香气","target_web_url":"","type":2},{"chapter_count":6,"good_alias":"","good_price":"","hybrid_url":"","id":1519,"pic":"http://f2.kkmh.com/image/170515/9a0wp5q7d.webp","request_id":"-1","special_list_url":"","sub_title":"","target_app_url":"","target_id":903,"target_package_name":"","target_title":"别闹我想静静","target_web_url":"","type":2},{"chapter_count":6,"good_alias":"","good_price":"","hybrid_url":"","id":987,"pic":"http://f2.kkmh.com/image/170509/nmmum3mpf.webp","request_id":"-1","special_list_url":"","sub_title":"","target_app_url":"","target_id":1033,"target_package_name":"","target_title":"山神与小枣","target_web_url":"","type":2},{"chapter_count":6,"good_alias":"","good_price":"","hybrid_url":"","id":1673,"pic":"http://f2.kkmh.com/image/170527/75f0yq69c.webp","request_id":"-1","special_list_url":"","sub_title":"","target_app_url":"","target_id":133,"target_package_name":"","target_title":"贫穷父女","target_web_url":"","type":2},{"chapter_count":6,"good_alias":"","good_price":"","hybrid_url":"","id":1494,"pic":"http://f2.kkmh.com/image/170512/ro0o5mhx2.webp","request_id":"-1","special_list_url":"","sub_title":"","target_app_url":"","target_id":1098,"target_package_name":"","target_title":"悲伤的拳头","target_web_url":"","type":2},{"chapter_count":6,"good_alias":"","good_price":"","hybrid_url":"","id":1420,"pic":"http://f2.kkmh.com/image/170505/b41vd2w9h.webp","request_id":"-1","special_list_url":"","sub_title":"","target_app_url":"","target_id":1095,"target_package_name":"","target_title":"窈窕淑男","target_web_url":"","type":2}],"item_type":1,"title":"新版轮播图"}],"scheme":[]}
     * message : ok
     */
    private int code;
    private DataBean data;
    private String message;
    public int getCode() {
        return code;
    }
    public void setCode(int code) {
        this.code = code;
    }

    public DataBean getData() {
        return data;
    }

    public void setData(DataBean data) {
        this.data = data;
    }

    public String getMessage() {
        return message;
    }
    public void setMessage(String message) {
        this.message = message;
    }
    public static class DataBean {
        private List<InfosBean> infos;
        private List<?> scheme;
        public List<InfosBean> getInfos() {
            return infos;
        }
        public void setInfos(List<InfosBean> infos) {
            this.infos = infos;
        }
        public List<?> getScheme() {
            return scheme;
        }

        public void setScheme(List<?> scheme) {
            this.scheme = scheme;
        }

        public static class InfosBean {
            /**
             * action :
             * action_type : 0
             * banners : [{"chapter_count":6,"good_alias":"","good_price":"","hybrid_url":"","id":878,"pic":"http://f2.kkmh.com/image/170203/xxgdiyto4.webp","request_id":"-1","special_list_url":"","sub_title":"","target_app_url":"","target_id":1023,"target_package_name":"","target_title":"浪漫香气","target_web_url":"","type":2},{"chapter_count":6,"good_alias":"","good_price":"","hybrid_url":"","id":1519,"pic":"http://f2.kkmh.com/image/170515/9a0wp5q7d.webp","request_id":"-1","special_list_url":"","sub_title":"","target_app_url":"","target_id":903,"target_package_name":"","target_title":"别闹我想静静","target_web_url":"","type":2},{"chapter_count":6,"good_alias":"","good_price":"","hybrid_url":"","id":987,"pic":"http://f2.kkmh.com/image/170509/nmmum3mpf.webp","request_id":"-1","special_list_url":"","sub_title":"","target_app_url":"","target_id":1033,"target_package_name":"","target_title":"山神与小枣","target_web_url":"","type":2},{"chapter_count":6,"good_alias":"","good_price":"","hybrid_url":"","id":1673,"pic":"http://f2.kkmh.com/image/170527/75f0yq69c.webp","request_id":"-1","special_list_url":"","sub_title":"","target_app_url":"","target_id":133,"target_package_name":"","target_title":"贫穷父女","target_web_url":"","type":2},{"chapter_count":6,"good_alias":"","good_price":"","hybrid_url":"","id":1494,"pic":"http://f2.kkmh.com/image/170512/ro0o5mhx2.webp","request_id":"-1","special_list_url":"","sub_title":"","target_app_url":"","target_id":1098,"target_package_name":"","target_title":"悲伤的拳头","target_web_url":"","type":2},{"chapter_count":6,"good_alias":"","good_price":"","hybrid_url":"","id":1420,"pic":"http://f2.kkmh.com/image/170505/b41vd2w9h.webp","request_id":"-1","special_list_url":"","sub_title":"","target_app_url":"","target_id":1095,"target_package_name":"","target_title":"窈窕淑男","target_web_url":"","type":2}]
             * item_type : 1
             * title : 新版轮播图
             */

            private String action;
            private int action_type;
            private int item_type;
            private String title;
            private List<BannersBean> banners;

            public String getAction() {
                return action;
            }

            public void setAction(String action) {
                this.action = action;
            }

            public int getAction_type() {
                return action_type;
            }

            public void setAction_type(int action_type) {
                this.action_type = action_type;
            }

            public int getItem_type() {
                return item_type;
            }

            public void setItem_type(int item_type) {
                this.item_type = item_type;
            }

            public String getTitle() {
                return title;
            }

            public void setTitle(String title) {
                this.title = title;
            }

            public List<BannersBean> getBanners() {
                return banners;
            }

            public void setBanners(List<BannersBean> banners) {
                this.banners = banners;
            }

            public static class BannersBean {
                /**
                 * chapter_count : 6
                 * good_alias :
                 * good_price :
                 * hybrid_url :
                 * id : 878
                 * pic : http://f2.kkmh.com/image/170203/xxgdiyto4.webp
                 * request_id : -1
                 * special_list_url :
                 * sub_title :
                 * target_app_url :
                 * target_id : 1023
                 * target_package_name :
                 * target_title : 浪漫香气
                 * target_web_url :
                 * type : 2
                 */

                private int chapter_count;
                private String good_alias;
                private String good_price;
                private String hybrid_url;
                private int id;
                private String pic;
                private String request_id;
                private String special_list_url;
                private String sub_title;
                private String target_app_url;
                private int target_id;
                private String target_package_name;
                private String target_title;
                private String target_web_url;
                private int type;

                public int getChapter_count() {
                    return chapter_count;
                }

                public void setChapter_count(int chapter_count) {
                    this.chapter_count = chapter_count;
                }

                public String getGood_alias() {
                    return good_alias;
                }

                public void setGood_alias(String good_alias) {
                    this.good_alias = good_alias;
                }

                public String getGood_price() {
                    return good_price;
                }

                public void setGood_price(String good_price) {
                    this.good_price = good_price;
                }

                public String getHybrid_url() {
                    return hybrid_url;
                }

                public void setHybrid_url(String hybrid_url) {
                    this.hybrid_url = hybrid_url;
                }

                public int getId() {
                    return id;
                }

                public void setId(int id) {
                    this.id = id;
                }

                public String getPic() {
                    return pic;
                }

                public void setPic(String pic) {
                    this.pic = pic;
                }

                public String getRequest_id() {
                    return request_id;
                }

                public void setRequest_id(String request_id) {
                    this.request_id = request_id;
                }

                public String getSpecial_list_url() {
                    return special_list_url;
                }

                public void setSpecial_list_url(String special_list_url) {
                    this.special_list_url = special_list_url;
                }

                public String getSub_title() {
                    return sub_title;
                }

                public void setSub_title(String sub_title) {
                    this.sub_title = sub_title;
                }

                public String getTarget_app_url() {
                    return target_app_url;
                }

                public void setTarget_app_url(String target_app_url) {
                    this.target_app_url = target_app_url;
                }

                public int getTarget_id() {
                    return target_id;
                }

                public void setTarget_id(int target_id) {
                    this.target_id = target_id;
                }

                public String getTarget_package_name() {
                    return target_package_name;
                }

                public void setTarget_package_name(String target_package_name) {
                    this.target_package_name = target_package_name;
                }

                public String getTarget_title() {
                    return target_title;
                }

                public void setTarget_title(String target_title) {
                    this.target_title = target_title;
                }

                public String getTarget_web_url() {
                    return target_web_url;
                }

                public void setTarget_web_url(String target_web_url) {
                    this.target_web_url = target_web_url;
                }
                public int getType() {
                    return type;
                }
                public void setType(int type) {
                    this.type = type;
                }
            }
        }
    }
}
MainActivity:
import android.content.Context;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.ImageView;
import com.bumptech.glide.Glide;
import com.google.gson.Gson;
import com.youth.banner.Banner;
import com.youth.banner.loader.ImageLoader;
import org.xutils.common.Callback;
import org.xutils.http.RequestParams;
import org.xutils.x;
import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {
    private String urlPath = "http://api.kkmh.com/v1/topic_new/discovery_list?gender=0&sa_event=eyJwcm9qZWN0Ijoia3VhaWthbl9hcHAiLCJ0aW1lIjoxNDg3ODM5MDM5MzE1LCJwcm9wZXJ0aWVzIjp7IkhvbWVwYWdlVGFiTmFtZSI6IueDremXqCIsIlZDb21tdW5pdHlUYWJOYW1lIjoi54Ot6ZeoIiwiJG9zX3ZlcnNpb24iOiI0LjIuMiIsIkdlbmRlclR5cGUiOiLlpbPniYgiLCJGcm9tRmluZENhdGVnb3J5VGFiTmFtZSI6IuWFqOmDqCIsIklzQXV0b0xvYWQiOmZhbHNlLCIkbGliX3ZlcnNpb24iOiIxLjYuMzQiLCIkbmV0d29ya190eXBlIjoiV0lGSSIsIiR3aWZpIjp0cnVlLCIkbWFudWZhY3R1cmVyIjoic2Ftc3VuZyIsIkZyb21GaW5kVGFiTmFtZSI6IuaOqOiNkCIsIiRzY3JlZW5faGVpZ2h0Ijo1NzYsIkNhdGVnb3J5Ijoi5peg5rOV6I635Y-WIiwiSG9tZXBhZ2VVcGRhdGVEYXRlIjowLCJQcm9wZXJ0eUV2ZW50IjoiUmVhZEZpbmRQYWdlIiwiRmluZFRhYk5hbWUiOiLmjqjojZAiLCJhYnRlc3RfZ3JvdXAiOjQ2LCIkc2NyZWVuX3dpZHRoIjoxMDI0LCJGaW5kQ2F0ZWdvcnlUYWJOYW1lIjoi5YWo6YOoIiwiJG9zIjoiQW5kcm9pZCIsIlRyaWdnZXJQYWdlIjoiSG9tZVBhZ2UiLCIkY2FycmllciI6IkNNQ0MiLCIkbW9kZWwiOiJHVC1QNTIxMCIsIiRhcHBfdmVyc2lvbiI6IjMuOC4xIn0sInR5cGUiOiJ0cmFjayIsImRpc3RpbmN0X2lkIjoiQTo5MDUxMDQyNzYzNzU1MTA5Iiwib3JpZ2luYWxfaWQiOiJBOjkwNTEwNDI3NjM3NTUxMDkiLCJldmVudCI6IlJlYWRGaW5kUGFnZSJ9\n";
    private List<String> images = new ArrayList<>();
    private List<String> titles = new ArrayList<>();
    List<Data.DataBean.InfosBean.BannersBean> dataList = new ArrayList<>();
    private Banner banner;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        x.view().inject(this);
        banner = (Banner) findViewById(R.id.banner);
        final RequestParams params = new RequestParams(urlPath);
        x.http().get(params, new Callback.CommonCallback<String>() {
            @Override
            public void onSuccess(String result) {
                Gson gson = new Gson();
                Data data = gson.fromJson(result, Data.class);
                List<Data.DataBean.InfosBean> infos = data.getData().getInfos();
                for (Data.DataBean.InfosBean in :infos) {
                    List<Data.DataBean.InfosBean.BannersBean> banners = in.getBanners();
                    for (Data.DataBean.InfosBean.BannersBean  ba:banners) {
                        String pic = ba.getPic();
                        titles.add(pic);
                    }
                }
                dataList.addAll(data.getData().getInfos().get(0).getBanners());
            }

            @Override
            public void onError(Throwable ex, boolean isOnCallback) {

            }

            @Override
            public void onCancelled(CancelledException cex) {

            }

            @Override
            public void onFinished() {
                //设置图片加载器
                banner.setImageLoader(new GlideImageLoader());
                //设置图片集合
                banner.setImages(titles);
                //设置时间
                banner.setDelayTime(2000);
                //banner设置方法全部调用完毕时最后调用
                banner.start();
            }
        });
    }
    class GlideImageLoader extends ImageLoader {
        @Override
        public void displayImage(Context context, Object path, ImageView imageView) {
            //Glide 加载图片简单用法
            Glide.with(context).load(path).into(imageView);
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值