Android中ImageView的使用方法
作者:nuist__NJUPT 发布时间:2023-11-19 02:03:41
标签:Android,ImageView
Android中ImageView的使用:点击按钮,改变图片透明度,切换图片
布局是三个按钮组件和一个ImageView组件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center">
<Button
android:id="@+id/addAlpha"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="增加图片透明度"
/>
<Button
android:id="@+id/downAlpha"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="减小图片透明度"
/>
<Button
android:id="@+id/next"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="切换图片"
/>
</LinearLayout>
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="280dp"
android:layout_marginTop="100dp"
android:scaleType="fitCenter"
android:src="@drawable/spring"
/>
</LinearLayout>
.java文件,控制增加和减少透明度以及图片切换
public class MainActivity extends AppCompatActivity {
private Button addAlpha;
private Button downAlpha;
private Button next;
private ImageView imageView1;
int [] images = new int[]{ //用数组存储春,夏,秋,冬四张图片
R.drawable.spring,
R.drawable.summer,
R.drawable.fall,
R.drawable.winter
} ;
int currentImage = 0 ; //定义当前默认显示的图片
int alpha = 255 ;//定义图片起始透明度
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_imageview);
addAlpha = (Button) findViewById(R.id.addAlpha);
downAlpha = (Button) findViewById(R.id.downAlpha);
next = (Button) findViewById(R.id.next);
imageView1 = (ImageView) findViewById(R.id.imageView1);
//对增加图片透明度按钮设置监听事件
addAlpha.setOnClickListener(new View.OnClickListener() {
@TargetApi(Build.VERSION_CODES.JELLY_BEAN)
@Override
public void onClick(View v) {
if(alpha >= 255){ //255是透明度上线
alpha = 255 ;
}
else{ //每点击增加透明度按钮,透明度增加20
alpha += 20 ;
}
imageView1.setImageAlpha(alpha); //为图片设置透明度
}
});
//对减少透明度按钮设置监听事件
downAlpha.setOnClickListener(new View.OnClickListener() {
@TargetApi(Build.VERSION_CODES.JELLY_BEAN)
@Override
public void onClick(View v) {
if(alpha <= 0){ //透明度下限
alpha = 0 ;
}
else{
alpha -= 20 ;
}
imageView1.setImageAlpha(alpha); //为图片设置透明度
}
});
//对切换图片按钮设置监听事件
next.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//控制显示下一张图片
imageView1.setImageResource(images[++ currentImage % images.length]);
}
});
}
}
效果图如下,点击按钮可以改变透明度和切换图片
来源:https://blog.csdn.net/nuist_NJUPT/article/details/117033975


猜你喜欢
- 在 Java 中,方法的重载(Overloading)和覆盖(Overriding)是两个重要的概念。它们都涉及到方法的定义与使用,但作用和
- 前言基于SpingBoot框架中, 我们随处可以见的便是各种各样的功能注解, 注解的实现原理AOP之前有说过(翻看本系列的前面几章即可),
- Android Material Design:PopupMenuAndroid Material Design 引入的PopupMenu类
- 1. 背景我们都知道,Compose可以使用mutableStateOf和UI进行绑定,改变值之后,就可以改变UI。var value by
- 本文实例讲述了Spring实战之SpEl语法。分享给大家供大家参考,具体如下:一 Beanpackage org.crazyit.app.d
- 首先,我们假设这样一个场景:一个ViewPager里面嵌套一个ViewPager,内部滑动方向和外部滑动方向一样时,该怎么解决这一冲突呢?针
- Java BufferWriter写文件之后文件是空的或者数据不全在编程的过程中,读写文件是非常常见的操作,在这里我问介绍一下最近我遇到的集
- 最近一直在使用邮件发送功能,老是遇到问题,后面才找到,原来并不是程序问题引起的,我吧问题整出来, javax.mail.SendFailed
- 实现闹钟运行的效果如下: 通知栏的运行后效果图如下:布局文件(activity_main.xml)<?xml version
- 前言本文准确来讲是探讨如何用 Jackson 来序列化 Apache avro 对象,因为简单用 Jackson 来序列化 Apache a
- 前言本文主要演示一个普通 java 项目导入IDEA的流程步骤及可能出现的问题、原因及解决办法。本文使用的部分软件版本如下:IDEA 201
- 一、内部类的概念在 Java 中,可以将一个类定义在另一个类或者一个方法的内部,前者称为内部类,后者称为外部类。内部类也是封装的一种体现。p
- 尽管我们通常认为通过JAVA的反射机制来访问其它类的私有字段和私有方法是可行的,其实并没有那么困难。 注释:只有在单独的JAVA程序中运行该
- 一、简介在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件。在Spring Cloud中,
- JMF这个多媒体开发框架太牛了,简单的几句代码就能实现一个视频播放器的开发,厉害,就是支持的格式少了一些,没关系,这个视频播放器可以播放mp
- 背景最近在探秘kafka为什么如此快?其背后的秘诀又是什么?怀着好奇之心,开始像剥洋葱 一样逐层内嵌。一步步揭晓kafka能够吊打mq的真因
- POST接口formdata传参模板记录var res = ""; HttpClient _httpClient = n
- 字体池的应用,主要是为了解决字体不断创建导致句柄泄漏/内存泄漏的问题,这个问题在Android上也同样存在。经测试,C# WinForm原生
- 1. 问题描述:自己修改了下 ${M2_HOME}/conf/settings.xml中的本地repository地址,但是重新执行mvn的
- 1.所有流程的起点是从拨号后按下拨号键开始,此步的代码在/android sourcecode/packages/Contacts/src/