Android实现图像切换器
作者:magiz19 发布时间:2023-11-27 00:45:41
标签:Android,图像切换器
本文实例为大家分享了Android实现图像切换器的具体代码,供大家参考,具体内容如下
java代码:
private int[] imageId = new int[] { R.drawable.img01, R.drawable.img02,
R.drawable.img03, R.drawable.img04, R.drawable.img05,
R.drawable.img06, R.drawable.img07, R.drawable.img08,
R.drawable.img09 }; // 声明并初始化一个保存要显示图像ID的数组
private int index = 0; // 当前显示图像的索引
private ImageSwitcher imageSwitcher; // 声明一个图像切换器对象
imageSwitcher = (ImageSwitcher) findViewById(R.id.imageSwitcher1); // 获取图像切换器
// 设置动画效果
imageSwitcher.setInAnimation(AnimationUtils.loadAnimation(this,
android.R.anim.fade_in)); // 设置淡入动画
imageSwitcher.setOutAnimation(AnimationUtils.loadAnimation(this,
android.R.anim.fade_out)); // 设置淡出动画
imageSwitcher.setFactory(new ViewFactory() {
@Override
public View makeView() {
ImageView imageView = new ImageView(MainActivity.this); // 实例化一个ImageView类的对象
imageView.setScaleType(ImageView.ScaleType.FIT_CENTER); // 设置保持纵横比居中缩放图像
imageView.setLayoutParams(new ImageSwitcher.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
return imageView; // 返回imageView对象
}
});
imageSwitcher.setImageResource(imageId[index]); // 显示默认的图片
Button up = (Button) findViewById(R.id.btn1); // 获取“上一张”按钮
Button down = (Button) findViewById(R.id.btn2); // 获取“下一张”按钮
up.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (index > 0) {
index--;
} else {
index = imageId.length - 1;
}
imageSwitcher.setImageResource(imageId[index]); // 显示当前图片
}
});
down.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (index < imageId.length - 1) {
index++;
} else {
index = 0;
}
imageSwitcher.setImageResource(imageId[index]); // 显示当前图片
}
});
xml代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/llayout"
android:gravity="center"
>
<Button
android:text="上一张"
android:id="@+id/btn1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<ImageSwitcher
android:id="@+id/imageSwitcher1"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<Button
android:text="下一张"
android:id="@+id/btn2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
说明:
drawable中,加入下列图片img01~img09
效果图:
来源:https://blog.csdn.net/magiz19/article/details/9115037
0
投稿
猜你喜欢
- 本文实例讲述了Android列表控件Spinner简单用法。分享给大家供大家参考,具体如下:Android的Spinner控件用来显示列表项
- 引言:上一专题介绍了下编译器是如何来翻译委托的,从中间语言的角度去看委托,希望可以帮助大家进一步的理解委托,然而之前的介绍都是委托只是封装一
- 一、VSCode安装EmmyLua 二、添加配置文件三、设置配置文件执行完第二步会弹出添加好的launch.json配置文件,这个
- 前言:有时候我们在用Spring Aop面向切面编程,需要获取连接点(JoinPoint)方法参数名、参数值。环境:Mac OSXIntel
- java数组初始化赋初值方法一int[] vis1;//声明未初始化 vis1=new in
- 在系统开发中,需要对请求和响应分别拦截下来进行解密和加密处理,在springboot中提供了RequestBodyAdviceAdapter
- 前言本文我们不去谈int、float、char等基本数据类型,而是用一般的类来说明。因为Java中可以直接通过 int varName 的方
- 在上一节中,我带大家学习了详解SpringBoot集成Redis来实现缓存技术方案,尤其是结合Spring Cache的注解的实现方案,接下
- 一.Worker Thread模式Worker的意思是工作的人,在Worker Thread模式中,工人线程Worker thread会逐个
- 我最近在研究Spring框架的路上,那么今天也算个学习笔记吧!学习一下如何实现Bean的装配方法Bean的简介Java开发者一般会听过Jav
- 在项目开发中,经常碰到map转实体对象或者对象转map的场景,工作中,很多时候我们可能比较喜欢使用第三方jar包的API对他们进行转化,而且
- Android 重写ViewGroup 分析onMeasure()和onLayout()方法在继承ViewGroup类时,需要重写两个方法,
- 通过2种方式模拟单个文件上传,效果如下所示开发步骤如下:1、新建一个web工程,导入struts2上传文件所需jar,如下图目录结构2、新建
- 老大让我check out 一个分支,可我在idea 右下角找了半天也没找到最后才发现:因为是刚创建的分支,我得先更新一下项目,连这个都不懂
- Java中普通代码块,构造代码块,静态代码块区别及代码示例//执行顺序:(优先级从高到低。)静态代码块>mian方法>构造代码块
- 本文实例为大家分享了Java实现图片拼接的具体代码,供大家参考,具体内容如下/** * 拼接图片(注:图片需长宽一致) * @param f
- 本文以实例阐述了C++中形参与实参的区别,有助于读者加深对于C++形参与实参的认识。形参出现在函数定义中,在整个函数体内都可以使用, 离开该
- Java阻塞队列阻塞队列和普通队列主要区别在阻塞二字:阻塞添加:队列已满时,添加元素线程会阻塞,直到队列不满时才唤醒线程执行添加操作阻塞删除
- 前言本文简单介绍抽象类,接口以及它们的异同点,另附简单的代码举例。一、抽象类是什么?在 Java 语言中使用 abstract class
- 利用mybtis插件打印完整的sql,将占位符?替换成实际值import org.apache.ibatis.cache.CacheKey;