开发者

ImageView setClickable(true) ... setPressed(true) not staying pressed

开发者 https://www.devze.com 2023-03-27 00:55 出处:网络
I\'ve got an ImageView which I\'m setting to setImageResource(R.drawable.someStateListDrawable). Everything works fine, when it\'s clicked, it shows the pressed state. However, I\'ve made it so that i

I've got an ImageView which I'm setting to setImageResource(R.drawable.someStateListDrawable). Everything works fine, when it's clicked, it shows the pressed state. However, I've made it so that it开发者_如何学运维 onClick, the ImageView is set to "setPressed(true)" so that it will remain in the pressed state. But for some reason, its not... Any ideas?


I just had this same problem with a Button. When onClick I set it to the pressed state ( btn.setPressed(true) ) but after that the button wasn't pressed.

In case this helps somebody, I finally worked with the selected state. My drawable xml looks like

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_selected="true" android:drawable="@drawable/menu_button_pressed"/>
</selector>

and at onClick I now use btn.setSelected( true ).

I don't know what was the problem with setPressed, but this worked for me.


Have you checked out this question? He basically says use a selector, and in the xml do something like this:

<item android:state_pressed="true"   
    android:drawable="@color/gray" />

Of course you would need to modify it to fit your needs.

0

精彩评论

暂无评论...
验证码 换一张
取 消