banner轮播器

<uses-permission android:name="android.permission.INTERNET"></uses-permission>
 
 
compile 'com.squareup.okhttp3:okhttp:3.8.1'
compile 'com.youth.banner:banner:1.4.9'
//最新版本
compile 'com.google.code.gson:gson:2.8.1'
compile 'com.github.bumptech.glide:glide:4.0.0'

<com.youth.banner.Banner
    android:id="@+id/banner"
    android:layout_width="match_parent"
    android:layout_height="200dp" />
 
 
 
 
GlideImageLoader
 
 
public class GlideImageLoader extends ImageLoader{

    @Override
    public void displayImage(Context context, Object path, ImageView imageView) {
        Glide.with(context).load(path).into(imageView);
    }
}
 
 
 
 
 MainActivity
 
 
public class MainActivity extends AppCompatActivity {

    private Bean bean;
    private Banner banner;
    private List<String> bannerlist;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initView();
        getDataforServer();
    }

    private void initView() {
        banner= (Banner) findViewById(R.id.banner);
        //设置图片加载器
        banner.setImageLoader(new GlideImageLoader());
        //设置显示样式
        banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR);
        //设置圆点位置  左右中
        banner.setIndicatorGravity(BannerConfig.CENTER);

        banner.setBannerAnimation(Transformer.ScaleInOut);
    }

    private void getDataforServer() {
        OkHttpClient okHttpClient = new OkHttpClient();
        Request request = new Request.Builder().url("http://169.254.140.58:3000/").build();
        Call call = okHttpClient.newCall(request);
        call.enqueue(new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {

            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                if (response.code() == 200) {
                    String str = response.body().string();
                    Log.d("haha", "" + str);
                    Gson gson = new Gson();
                    bean = gson.fromJson(str, Bean.class);
                    bannerlist = bean.data.info.banner;



                    runOnUiThread(new Runnable() {
                        @Override
                        public void run() {
                            banner.setImages(bannerlist);
                            //开启轮询
                            banner.start();
                        }
                    });

                }
            }
        });

    }
}

猜你喜欢

转载自blog.csdn.net/yuejunfei/article/details/77468324