android 实现ImageView按压效果和解决背景图片拉申问题

时间:2024-01-08 09:59:50

建立一个.XML文件,名为:image_tab_bg.xml

 <?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/image_press" />//压下效果图片
<item android:state_enabled="true" android:drawable="@drawable/image" /> //未按压作图片 </selector>

然后你要实现的图片ImageView的src设为:@drawable/image_tab_bg即可

注意:不要设为ImageView的Background属性中;这样图片会被拉申

ImageView中XML属性src和background的区别:

background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸。src是图片内容(前景),bg是背景,可以同时使用。

此外:scaleType只对src起作用;bg可设置透明度,比如在ImageButton中就可以用android:scaleType控制图片的缩放方式