我有一个具有ImageViev的应用程序,可以单击该应用程序执行操作。我希望它在被按下时更大一些,并在它被释放时恢复正常。问题是,我有10个不同的图像出现在ImageViev中,具体取决于具体情况。我已经阅读了很多关于这一点的线索,并没有一个解决方案似乎解决了我的问题。我需要:
到目前为止我已尝试过这个:
创建一个可绘制的项目,如下所示:
<?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>
但它不会起作用,因为Android会自动将图像缩放到ImageView的大小,所以无论b1big是否大于b1。
创建10个普通图像,如image1,image2 ... image10,然后创建10个大图像,如image1big ... image10big,然后创建10个可绘制对象,如:
<item
android:state_pressed="true"
android:drawable="@drawable/image1big" />
<item
android:state_pressed="false"
android:drawable="@drawable/image1"/>
并将它们用作我的ImageView的src?如何阻止它们缩放呢?
答案 0 :(得分:0)
将选择器的内容更新为
<?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>