按下时使Android图像变大,释放时使其正常
我有一个应用程序,它有一个ImageViev,可以点击它执行一个操作。我希望当它被按下时,它会变大一点,当它被释放时,它会恢复正常。问题是,我有10个不同的图像出现在ImageViev中,这取决于具体情况。我读过很多关于这方面的文章,但似乎没有一个解决方案能解决我的问题。我需要:按下时使Android图像变大,释放时使其正常,android,xml,image,android-imageview,android-drawable,Android,Xml,Image,Android Imageview,Android Drawable,我有一个应用程序,它有一个ImageViev,可以点击它执行一个操作。我希望当它被按下时,它会变大一点,当它被释放时,它会恢复正常。问题是,我有10个不同的图像出现在ImageViev中,这取决于具体情况。我读过很多关于这方面的文章,但似乎没有一个解决方案能解决我的问题。我需要: 按下按钮时将图像放大,或将其替换为更大的版本 释放按钮时使图像收缩,或返回图像的正常版本 当我在ImageView中更改图像时,按下时图像大小仍会更改 到目前为止,我已经试过了: 创建可绘制项目,如下所示: &l
- 按下按钮时将图像放大,或将其替换为更大的版本
- 释放按钮时使图像收缩,或返回图像的正常版本
- 当我在ImageView中更改图像时,按下时图像大小仍会更改
- 创建可绘制项目,如下所示:
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true" android:drawable="@drawable/b1big" /> <item android:state_pressed="false" android:drawable="@drawable/b1"/> </selector>
- 更改可绘制项目的宽度和高度,但它没有这些参数
<item
android:state_pressed="true"
android:drawable="@drawable/image1big" />
<item
android:state_pressed="false"
android:drawable="@drawable/image1"/>
并将它们用作我的ImageView的src?那么如何防止它们扩展?将选择器的内容更新为
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true"
android:drawable="@drawable/b1big" />
<item
android:drawable="@drawable/b1"/>
</selector>
为什么不试试这个?您是否为您的图像视图设置了android:scaleType=“center”
属性?如果不需要重叠相邻视图,也不需要增加太多大小,您可以在正常状态下为其设置x像素的填充,在正常状态下为其设置0像素的填充pressed@WISHY你的答案可能是对的,但是它有点太复杂了,因为我正在编写的程序非常简单。另外,我需要使图像在发布后立即恢复正常,而不是在第二次点击后恢复正常。我这样做了,没有改变任何内容。尝试了,没有帮助