android 简单实现Banner 轮廓图效果自动播放

 

 

一,首先要导入相关依赖


compile 'com.github.bumptech.glide:glide:3.7.0'

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

 

 

第二步 。对应的相关的权限
<uses-permission android:name="android.permission.INTERNET" />

 

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

 

 

 

 

 

 

第三步 :创建相关的实现的类
创建GlideImageLoader 图片加载类
public class GlideImageLoader extends ImageLoader {
    public void displayImage(Context context, Object path, ImageView imageView) {
        Glide.with(context).load(path).into(imageView);
    }
}
第四java代码 对应的Activity 主页面 或者Fragment界面
public class MainActivity extends AppCompatActivity implements IView{
 Banner banner;
    ArrayList mlist;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);
        banner = (Banner)findViewById(R.id.banner); Banner banner;
    ArrayList mlist;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);
        banner = (Banner)findViewById(R.id.banner);
      userpresenter = new UserPresenter(this);
        userpresenter.getUser(Api.HOME_URL);
    }
//该方法是MVP实现View层的接口 重写的方法 
    @Override
    public void getNews(ArrayList<News.DataBean> list) {
        recycler.setAdapter(homeadper =new HomeAdaper(Main2Activity.this,list));
        mlist = new ArrayList();
        for (int i = 0; i < list.size(); i++) {
            mlist.add(list.get(i).getImage_url());
        }
        banner.setImageLoader(new GlideImageLoader());
        banner.setImages(mlist);
        banner.start();
}

 

  //MVP實現View层里面 banner
    @Override
    public void getNews(ArrayList<News.DataBean> list) {
        recycler.setAdapter(homeadper =new HomeAdaper(MainActivity.this,list));
  /*      for (int i = 0; i < list.size(); i++) {
      *//*      list_path.add(list.get(i).getPic_url());

        }*/
    /*    banner.setImageLoader(new GlideImageLoader());
        banner.setImages(list_path);
        banner.start();*/
        //list_path.add("http://ww4.sinaimg.cn/large/006uZZy8jw1faic259ohaj30ci08c74r.jpg");

        list_path.add(list.get(0).getPic_url());
        list_path.add(list.get(1).getPic_url());
        list_path.add(list.get(2).getPic_url());
        list_path.add(list.get(3).getPic_url());

        list_title.add("好好学习");
        list_title.add("天天向上");
        list_title.add("热爱劳动");
        list_title.add("不搞对象");
        //设置内置样式,共有六种可以点入方法内逐一体验使用。
        banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE_INSIDE);
        //设置图片加载器,图片加载器在下方
        banner.setImageLoader(new MyLoader());
        //设置图片网址或地址的集合
        banner.setImages(list_path);
        //设置轮播的动画效果,内含多种特效,可点入方法内查找后内逐一体验
        banner.setBannerAnimation(Transformer.Default);
        //设置轮播图的标题集合
        banner.setBannerTitles(list_title);
        //设置轮播间隔时间
        banner.setDelayTime(3000);
        //设置是否为自动轮播,默认是“是”。
        banner.isAutoPlay(true);
        //设置指示器的位置,小点点,左中右。
        banner.setIndicatorGravity(BannerConfig.CENTER)
                //以上内容都可写成链式布局,这是轮播图的监听。比较重要。方法在下面。
                .setOnBannerListener(this)
                //必须最后调用的方法,启动轮播图。
                .start();

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值