Android实现图像切换器
作者:magiz19 时间:2023-11-27 00:45:41
本文实例为大家分享了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
标签:Android,图像切换器
0
投稿
猜你喜欢
c# 方法可变数量的参数
2023-10-06 07:31:21
Android中TelephonyManager类的方法实例分析
2021-07-29 10:35:28
带你了解如何使用Spring基于ProxyFactoryBean创建AOP代理
2022-04-28 09:17:37
关于Spring Boot项目的 log4j2 核弹漏洞问题(一行代码配置搞定)
2022-08-26 03:04:20
@Value如何获取yml和properties配置参数
2021-12-12 13:24:01
详解Java Selenium中的鼠标控制操作
2023-11-23 14:43:17
java连接SQL Server数据库的方法
2022-10-14 04:16:56
Java代码优化细节
2023-06-26 09:34:34
java图形界面之布局设计
2021-11-10 16:07:40
Springboot打成war包并在tomcat中运行的部署方法
2022-06-29 07:53:32
基于Map的computeIfAbsent的使用场景和使用方式
2023-04-30 03:04:06
SpringCloud分布式链路追踪组件Sleuth配置详解
2023-11-28 23:58:42
Spring Boot 启动加载数据 CommandLineRunner的使用
2021-06-17 12:52:21
Android实战教程第六篇之一键锁屏应用问题解决
2023-01-28 03:13:22
VS.net VSS时,编译报错:未能向文件“.csproj.FileListAbsolute.txt”写入命令行 对路径 的访问被拒绝。
2021-10-01 18:29:12
Spring零基础入门WebFlux响应式编程
2022-07-12 07:25:53
Java链表(Linked List)基本原理与实现方法入门示例
2021-10-12 05:49:14
IntelliJ IDEA优化配置的实现
2023-01-01 03:29:55
详解Flutter桌面应用如何进行多分辨率适配
2023-06-17 07:14:59
C#实现将字符串转换成日期格式的方法
2021-07-18 06:19:11