ConvenientBanner 无限轮播使用

来源:互联网 发布:it狂人类似 编辑:程序博客网 时间:2024/06/05 22:48
                          
               导包: compile 'com.bigkoo:convenientbanner:2.0.5'
       
        第一步:布局
     
   <?xml version="1.0" encoding="utf-8"?> <RelativeLayout       xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    xmlns:app="http://schemas.android.com/apk/res-auto"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context="com.example.myapplication.MainActivity">    <com.bigkoo.convenientbanner.ConvenientBanner        android:layout_width="match_parent"        android:layout_height="150dp"        android:id="@+id/con"        >     </com.bigkoo.convenientbanner.ConvenientBanner></RelativeLayout>

第二步:mian类里的代码逻辑
package com.example.myapplication;import android.content.Context;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.ImageView;import com.bigkoo.convenientbanner.ConvenientBanner;import com.bigkoo.convenientbanner.holder.CBViewHolderCreator;import com.bigkoo.convenientbanner.holder.Holder;import com.bigkoo.convenientbanner.listener.OnItemClickListener;import com.nostra13.universalimageloader.core.ImageLoader;import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;import java.lang.reflect.Field;import java.util.Arrays;import java.util.List;public class MainActivity extends AppCompatActivity implements OnItemClickListener {    private ConvenientBanner conven;    private String[] imags=new String[]{            "http://image.wufazhuce.com/FvVmWbqlle7jlUCTeozoval9NyBH",            "http://image.wufazhuce.com/FmDRnQ1XhReHRHB4jYqAPSx8htsP","http://image.wufazhuce.com/Fu6o0fqKHsI_TjdpPX3N2Kc99vNP",            "http://image.wufazhuce.com/FuPgOcbGDD9__fyuCdPBXb5pbA1C"};    List<String> datas;    ImageLoader imgslod;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        conven = (ConvenientBanner) findViewById(R.id.con);        imgslod = ImageLoader.getInstance();        imgslod.init(ImageLoaderConfiguration.createDefault(this));        datas=Arrays.asList(imags);        conven.setPages(new CBViewHolderCreator() {            @Override            public Object createHolder() {                return new Myhoude();            }        },datas)                .setPointViewVisible(true)                .startTurning(2000)                .setOnItemClickListener(this)                .setPageIndicator(new int[]{R.drawable.ic_page_indicator,R.drawable.ic_page_indicator_focused})                .setPageIndicatorAlign(ConvenientBanner.PageIndicatorAlign.CENTER_HORIZONTAL)                .setManualPageable(true);            }    @Override    public void onItemClick(int position) {    }    private class Myhoude implements Holder<String>{    private ImageView imageView;        @Override        public View createView(Context context) {            imageView=new ImageView(context);            imageView.setScaleType(ImageView.ScaleType.FIT_XY);            return imageView;        }        @Override        public void UpdateUI(Context context, int position, String data) {            ImageLoader.getInstance().displayImage(data,imageView);        }    }    public int getid(String name,Class<?> c){        Field field = null;        try {            field = c.getDeclaredField(name);            return field.getInt(field);        } catch (Exception e) {            e.printStackTrace();            return -1;        }    }}


    第二步:Mian类里的代码逻辑
       
          package com.example.myapplication;import android.content.Context;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.ImageView;import com.bigkoo.convenientbanner.ConvenientBanner;import com.bigkoo.convenientbanner.holder.CBViewHolderCreator;import com.bigkoo.convenientbanner.holder.Holder;import com.bigkoo.convenientbanner.listener.OnItemClickListener;import com.nostra13.universalimageloader.core.ImageLoader;import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;import java.lang.reflect.Field;import java.util.Arrays;import java.util.List;public class MainActivity extends AppCompatActivity implements OnItemClickListener {    private ConvenientBanner conven;    private String[] imags=new String[]{            "http://image.wufazhuce.com/FvVmWbqlle7jlUCTeozoval9NyBH",            "http://image.wufazhuce.com/FmDRnQ1XhReHRHB4jYqAPSx8htsP","http://image.wufazhuce.com/Fu6o0fqKHsI_TjdpPX3N2Kc99vNP",            "http://image.wufazhuce.com/FuPgOcbGDD9__fyuCdPBXb5pbA1C"};    List<String> datas;    ImageLoader imgslod;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        conven = (ConvenientBanner) findViewById(R.id.con);        imgslod = ImageLoader.getInstance();        imgslod.init(ImageLoaderConfiguration.createDefault(this));        datas=Arrays.asList(imags);        conven.setPages(new CBViewHolderCreator() {            @Override            public Object createHolder() {                return new Myhoude();            }        },datas)                .setPointViewVisible(true)                .startTurning(2000)                .setOnItemClickListener(this)                .setPageIndicator(new int[]{R.drawable.ic_page_indicator,R.drawable.ic_page_indicator_focused})                .setPageIndicatorAlign(ConvenientBanner.PageIndicatorAlign.CENTER_HORIZONTAL)                .setManualPageable(true);            }    @Override    public void onItemClick(int position) {    }    private class Myhoude implements Holder<String>{    private ImageView imageView;        @Override        public View createView(Context context) {            imageView=new ImageView(context);            imageView.setScaleType(ImageView.ScaleType.FIT_XY);            return imageView;        }        @Override        public void UpdateUI(Context context, int position, String data) {            ImageLoader.getInstance().displayImage(data,imageView);        }    }    public int getid(String name,Class<?> c){        Field field = null;        try {            field = c.getDeclaredField(name);            return field.getInt(field);        } catch (Exception e) {            e.printStackTrace();            return -1;        }    }}
        
   
原创粉丝点击