Banner 图片轮播

来源:互联网 发布:仿淘宝手机网站模板 编辑:程序博客网 时间:2024/05/16 18:14

布局


    <com.youth.banner.Banner
        android:id="@+id/mybanner"
        android:layout_width="match_parent"
        android:layout_height="180dp"
        />

//依赖

    compile 'com.youth.banner:banner:1.4.9'

                       //   图片

    compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'




public class MainActivity extends AppCompatActivity {
    private Banner banner;
    private List<Integer> images = new ArrayList<>();//存放本地图片的ID
    private List<String> urls = new ArrayList<>();//存放网络地址
    private com.nostra13.universalimageloader.core.ImageLoader universalImageloader = com.nostra13.universalimageloader.core.ImageLoader.getInstance();
private List<DataBean> dataBeen=new ArrayList<>();

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        banner = (Banner) findViewById(R.id.mybanner);
        /******显示本地图片********/
//        for (int i = 0; i < 4; i++) {
//            //图片加载器中需要用到的path;
//            images.add(R.mipmap.ic_launcher);
//        }
//        //添加本地mipmap下的图片;
//        banner.setImageLoader(new ImageLoader() {
//            @Override
//            public void displayImage(Context context, Object path, ImageView imageView) {
//                imageView.setImageResource((Integer) path);
//            }
//        });
//        banner.setImages(images);
        //   banner.start();

        /******显示网络图片********/

//        for (int i = 0; i < 4; i++) {
//            urls.add("http://img-arch.pconline.com.cn/images/piclib/201306/18/batch/1/179626/1371518448073jl2qblsrem.jpg");
//        }
//        //给universal imageloader初始化
//        ImageLoaderConfiguration configuration = ImageLoaderConfiguration.createDefault(MainActivity.this);
//        universalImageloader.init(configuration);
//        //初始化option
//        final DisplayImageOptions options = new DisplayImageOptions.Builder()
//                .cacheInMemory(true)//内存缓存
//                .cacheOnDisk(true)//磁盘缓存
//                .build();
//        banner.setImageLoader(new ImageLoader() {
//            @Override
//            public void displayImage(Context context, Object path, ImageView imageView) {
//                //使用universal下载网络图片设置给imageview显示
//                universalImageloader.displayImage(path.toString(), imageView, options);
//            }
//        });
//        //设置图片的URL数据;
//        banner.setImages(urls);

        /******添加复杂类型数据******/
        for (int i = 0; i < 4; i++) {
            dataBeen.add(new DataBean("http://img-arch.pconline.com.cn/images/piclib/201306/18/batch/1/179626/1371518448073jl2qblsrem.jpg","dddd"));
        }
        //给universal imageloader初始化
        ImageLoaderConfiguration configuration = ImageLoaderConfiguration.createDefault(MainActivity.this);
        universalImageloader.init(configuration);
        //初始化option
        final DisplayImageOptions options = new DisplayImageOptions.Builder()
                .cacheInMemory(true)//内存缓存
                .cacheOnDisk(true)//磁盘缓存
                .build();
        banner.setImageLoader(new ImageLoader() {
            @Override
            public void displayImage(Context context, Object path, ImageView imageView) {
                //使用universal下载网络图片设置给imageview显示
                universalImageloader.displayImage(((DataBean)path).url, imageView, options);
            }
        });
        //设置图片的URL数据;
        banner.setImages(dataBeen);
        banner.setDelayTime(3000);
        banner.setBannerAnimation(Transformer.ScaleInOut);
        banner.start();
    }
}





bean类

public class DataBean  {
    public String url,text;

    public DataBean(String url, String text) {
        this.url = url;
        this.text = text;
    }
}





原创粉丝点击