Android实现简单的banner轮播图

 更新时间:2021年05月18日 08:04:23   作者:勘察加熊人  
这篇文章主要为大家详细介绍了Android实现简单的banner轮播图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

本文实例为大家分享了Android实现简单banner轮播图的具体代码,供大家参考,具体内容如下

说明:想玩一个简单的轮播图效果  用的第三方的框架玩一下,支持设置轮播图多种样式

1.效果图

2.添加依赖

implementation 'com.youth.banner:banner:1.4.10'
implementation "com.github.bumptech.glide:glide:4.6.1"

3.主界面

package com.example.myapplication34;
 
 
import android.os.Bundle;
 
import com.youth.banner.Banner;
import com.youth.banner.BannerConfig;
import com.youth.banner.Transformer;
 
import java.util.ArrayList;
 
import androidx.appcompat.app.AppCompatActivity;
 
public class MainActivity extends AppCompatActivity {
    //界面控件
    private Banner mbanner;
    //轮播图的数据
    private MyImageLoader myImageLoader;
    private ArrayList<Integer> photos;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Bundle bundle = getIntent().getBundleExtra("bundle");
        initData();
        initView();
    }
 
    //界面初始化
    private void initView() {
        mbanner = (Banner) findViewById(R.id.banner);
        //设置轮播的样式
        mbanner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR);  //CIRCLE_INDICATOR
        //设置图片加载器
        mbanner.setImageLoader(myImageLoader);
        //设置轮播的动画效果,里面有很多种特效,可以都看看效果。
        mbanner.setBannerAnimation(Transformer.ZoomOutSlide);
        //设置轮播间隔时间
        mbanner.setDelayTime(3000);
        //设置是否为自动轮播,默认是true
        mbanner.isAutoPlay(true);
        //设置指示器的位置,小点点,居中显示
        mbanner.setIndicatorGravity(BannerConfig.CENTER);
        //设置图片加载地址
        mbanner.setImages(photos)
                //开始调用的方法,启动轮播图。
                .start();
 
 
    }
 
    //数据初始化
    private void initData() {
        myImageLoader = new MyImageLoader();
        //将轮播的图片放在photos 那里
        photos = new ArrayList<Integer>();
        photos.add(R.mipmap.photo2);
        photos.add(R.mipmap.photo1);
        photos.add(R.mipmap.photo3);
        photos.add(R.mipmap.photo4);
        photos.add(R.mipmap.photo5);
        photos.add(R.mipmap.photo6);
 
    }
 
 
}

4.设置图片源数据

package com.example.myapplication34;
 
 
import android.content.Context;
import android.widget.ImageView;
 
import com.bumptech.glide.Glide;
import com.youth.banner.loader.ImageLoader;
 
public class MyImageLoader extends ImageLoader {
    @Override
    public void displayImage(Context context, Object path, ImageView imageView) {
        Glide.with(context.getApplicationContext())
                .load(path)
                .into(imageView);
    }
}

5.布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
 
 
    <com.youth.banner.Banner
        android:id="@+id/banner"
        android:layout_width="match_parent"
        android:layout_height="200dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
 
</LinearLayout>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持程序员之家。

相关文章

  • Android使用自定义控件HorizontalScrollView打造史上最简单的侧滑菜单

    Android使用自定义控件HorizontalScrollView打造史上最简单的侧滑菜单

    侧滑菜单一般都会自定义ViewGroup,然后隐藏菜单栏,当手指滑动时,通过Scroller或者不断的改变leftMargin等实现;多少都有点复杂,完成以后还需要对滑动冲突等进行处理,今天给大家带来一个简单的实现,史上最简单有点夸张,但是的确是我目前遇到过的最简单的一种实现
    2016-02-02
  • Android pull解析xml的实现方法

    Android pull解析xml的实现方法

    这篇文章主要介绍了Android pull解析xml的实现方法的相关资料,希望通过本文能帮助到大家,谢谢大家对本站的支持!需要的朋友可以参考下
    2017-10-10
  • Android使用MediaPlayer和TextureView实现视频无缝切换

    Android使用MediaPlayer和TextureView实现视频无缝切换

    这篇文章主要为大家详细介绍了Android使用MediaPlayer和TextureView实现视频无缝切换,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10
  • Android?Flutter制作一个修改组件属性的动画

    Android?Flutter制作一个修改组件属性的动画

    flutter为我们提供了一个AnimationController来对动画进行详尽的控制,不过直接是用AnimationController是比较复杂的,如果只是对一个widget的属性进行修改,可以做成动画吗,本文就来探讨一下
    2023-05-05
  • Android悬浮窗的实现(易错点)

    Android悬浮窗的实现(易错点)

    现在很多应用都使用到悬浮窗,例如微信在视频的时候,点击Home键,视频小窗口仍然会在屏幕上显示。下面小编来实现一下android 悬浮窗,感兴趣的朋友跟随小编一起看看吧
    2019-10-10
  • Android 自定义AlertDialog对话框样式

    Android 自定义AlertDialog对话框样式

    实际的项目开发当中,经常需要根据实际的需求来自定义AlertDialog。最近在开发一个WIFI连接的功能,点击WIFI需要弹出自定义密码输入框,具体代码大家参考下本文
    2017-09-09
  • Android之TextView自适应大小

    Android之TextView自适应大小

    对于设置TextView的字体默认大小对于UI界面的好看程度是很重要的,小屏幕设置的文字过大或者大屏幕设置的文字过小都造成UI的不美观。现在就让我们学习自适应大小的TextView控件。下面跟着小编一起来看下吧
    2017-03-03
  • 解决Eclipse创建android项目无法正常预览布局文件问题的方法

    解决Eclipse创建android项目无法正常预览布局文件问题的方法

    这篇文章主要介绍了解决Eclipse创建android项目无法正常预览布局文件问题的方法,需要的朋友可以参考下
    2015-12-12
  • Android studio 广播的简单使用代码详解

    Android studio 广播的简单使用代码详解

    这篇文章主要介绍了Android studio 广播的简单使用,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04
  • android canvas使用line画半圆

    android canvas使用line画半圆

    这篇文章主要为大家详细介绍了android canvas使用line画半园,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-02-02

最新评论

?


http://www.vxiaotou.com