Android实现图片轮播
Android实现如下样式的图片轮播
1.导入依赖
//banner轮播框架implementation 'com.youth.banner:banner:1.4.10'// Glide 图片加载implementation 'com.github.bumptech.glide:glide:3.7.0'
2.在activity_main.xml页面添加Banner标签
<?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.Bannerandroid:id="@+id/mBanner"android:layout_width="match_parent"android:layout_height="330dp" /></LinearLayout>
3.MainActivity.java
import androidx.appcompat.app.AppCompatActivity;import android.content.Context;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.Toast;import com.bumptech.glide.Glide;
import com.youth.banner.Banner;
import com.youth.banner.BannerConfig;
import com.youth.banner.Transformer;
import com.youth.banner.listener.OnBannerListener;
import com.youth.banner.loader.ImageLoader;import java.util.ArrayList;
import java.util.List;public class MainActivity extends AppCompatActivity implements OnBannerListener {private Banner mBanner;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);initView();}private void initView() {mBanner=findViewById(R.id.mBanner);//图片资源 这里我将图片放在了drawable文件夹中 自己可随意添加图片int[] imageResourceID = new int[]{R.drawable.internet, R.drawable.life, R.drawable.news};List<Integer> imgeList = new ArrayList<>();//轮播标题String[] mtitle = new String[]{"互联网", "生活应用", "新闻时事"};List<String> titleList = new ArrayList<>();for (int i = 0; i < imageResourceID.length; i++) {imgeList.add(imageResourceID[i]);//把图片资源循环放入list里面titleList.add(mtitle[i]);//把标题循环设置进列表里面//设置图片加载器,通过Glide加载图片mBanner.setImageLoader(new ImageLoader() {@Overridepublic void displayImage(Context context, Object path, ImageView imageView) {Glide.with(MainActivity.this).load(path).into(imageView);}});//设置轮播的动画效果,里面有很多种特效,可以到GitHub上查看文档。mBanner.setBannerAnimation(Transformer.DepthPage);mBanner.setImages(imgeList);//设置图片资源mBanner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE_INSIDE);//设置banner显示样式(带标题的样式)mBanner.setBannerTitles(titleList); //设置标题集合(当banner样式有显示title时)//设置指示器位置(即图片下面的那个小圆点)mBanner.setIndicatorGravity(BannerConfig.CENTER);mBanner.setDelayTime(3000);//设置轮播时间3秒切换下一图mBanner.setOnBannerListener(this);//设置监听mBanner.start();//开始进行banner渲染}}@Overrideprotected void onStart() {super.onStart();mBanner.startAutoPlay();//开始轮播}@Overrideprotected void onStop() {super.onStop();mBanner.stopAutoPlay();//结束轮播}//对轮播图设置点击监听事件@Overridepublic void OnBannerClick(int position) {Toast.makeText(this, "你点击了第" + (position + 1) + "张轮播图", Toast.LENGTH_SHORT).show();}
}
项目功能根据这位大佬的这篇文章写出来的,大家可以去看看。
Android实现图片轮播相关推荐
- android首页图片轮播效果,Android_Android自动播放Banner图片轮播效果,先看一下效果图支持本地图 - phpStudy...
Android自动播放Banner图片轮播效果 先看一下效果图 支持本地图片以及网络图片or本地网络混合. 使用方式: android:id="@+id/banner" andro ...
- Android App图片轮播效果的组件化
简介 一个通用的图片轮播效果的通用组件,方便开发者快速集成. 初学者,其实应该实现一个自定义控件的,改天有空,在学习下吧,学习能力一般,以前也没写过java,这个组件都写了好久,惭愧啊. 背景 笔者参 ...
- Android 视频图片 轮播,详解android 视频图片混合轮播实现
循环添加视频view 图片view for (int i = 0 ;i if (beansarraylist.get(i).gettype()==1){ videoplayer = new nice ...
- Android广告图片轮播,支持无限循环和设置轮播样式、切换时间等
Android-----------广告图片轮播控件 Banner广告图片轮播控件,支持无限循环和多种主题,可以灵活设置轮播样式.动画.轮播和切换时间.位置.图片加载框架等! 很多Android AP ...
- android 自适应图片轮播,Android使用Recyclerview实现图片轮播效果的方法
Android使用Recyclerview实现图片轮播效果的方法 发布时间:2020-06-23 15:47:58 来源:亿速云 阅读:113 作者:清晨 这篇文章将为大家详细讲解有关Android使 ...
- Android 实现图片轮播(仿淘宝首页商品轮播展示)
一 引用依赖 // 图片轮播图implementation 'com.github.dongjunkun:BannerLayout:1.0.6' 二 创建图片加载工具类 public class G ...
- Android 实现图片轮播的三种方法,android开发者论坛
public Object instantiateItem(ViewGroup container, int position) { // 对ViewPager页号求模取出View列表中要显示的项 p ...
- 索尼android电视图片轮播,电视投屏居然还能这样玩?
原标题:电视投屏居然还能这样玩? 现如今,投屏几乎成为大家日常生活必不可少的一种观影方式,通过电视投屏可以带来更清晰的画面效果,成为追剧党以及各类球赛爱好者的不二之选. 那么今天小智就以索尼电视为例, ...
- android viewflipper图片轮播,使用ViewFlipper实现图片轮播
public class MainActivity extends AppCompatActivity { private ViewFlipper flipper; //背景图片int[] id pr ...
最新文章
- Linux C程序命令行传参
- UML之类图和包图,对象图
- Shell命令-管理与性能监视之strace、ltrace
- es5 - array - concat
- centos7 apache2.4 测试
- maven实战笔记-12
- 直接获取submission结果
- html语言使用什么来定位,HTML是什么,URL是什么
- Uninstall JavaVM and Xcode On Mac OS X
- mybatis 插入一条记录 参数为map的写法【用遍历Map的key和value的方式,可以实现只插入有效值】...
- 操作系统如何恢复到原先状态
- 软件评测师考试(再来看一遍书,整理知识点)
- [读书笔录]解析卷积神经网络(魏秀参)——目录和绪论
- Python之Pygame.rect函数
- 安卓怎么修改dns服务器,安卓如何修改dns服务器地址
- mac安装chromedriver谷歌浏览器驱动
- Matlab突然闪退 出现Fatal Error On Startup解决办法
- Android常用设置
- 在线IP到地理位置解析的API接口,IP到地理位置、所属组织名、AS号、域名反查
- matlab绘制心形图
热门文章
- Stashed changes conflicted with hook auto-fixes...
- 记录一下在云服务器上配置MYSQL主从。
- 微信用计算机,技巧:计算机可以使用微信吗?
- 在线五子棋对战 --- 人机对战的实现
- 微信公众平台js算法逆向
- 计算机键盘无法使用6,电脑左边键盘数字键只可以用5和6,怎么回事
- 第五章运算符表达式和语句
- 春夏季更替 超健康养生的饮食搭配标准
- 机器学习-02 基于sklearn 广义线性模型-普通最小二乘法
- php几个时间段去除重复,一个时间段内各地区数据和,发现重复地区不相加