我有一個圖像,但我想知道如何我可以有這個圖像更改爲另一個時,用戶手指與屏幕接觸,然後恢復到舊圖像時他們的手指離開。Android:改變圖像時,點擊,然後恢復
我很想學習這一點,並嘗試點擊監聽器的方法,但我只能真正使圖像永久變化,即使如此,它的效果很差。那麼有人可以幫我解決這個問題嗎?
我有一個圖像,但我想知道如何我可以有這個圖像更改爲另一個時,用戶手指與屏幕接觸,然後恢復到舊圖像時他們的手指離開。Android:改變圖像時,點擊,然後恢復
我很想學習這一點,並嘗試點擊監聽器的方法,但我只能真正使圖像永久變化,即使如此,它的效果很差。那麼有人可以幫我解決這個問題嗎?
是應與一個國家名單這是一種可繪製的,而您可以定義不同的狀態不同的其他可繪製(其中「壓」,「專注」,選擇」等)工作:
http://developer.android.com/guide/topics/resources/drawable-resource.html#StateList
注意的是,項目的順序是非常重要的,並且默認的繪製應最後在選擇項目列表被放在例:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable_resource_pressed" android:state_pressed="true">
<item android:drawable="@drawable_resource_regular">
</selector>
你所需要的就是一個OnTouchListener註冊。至 當圖像應該改變時您想要觸摸的視圖(例如,通過保存圖像本身的ImageView
)。
該聽衆有一個回撥onTouch
,提供給您一個MotionEvent
。 使用MotionEvent.getAction()
並測試它是否等於MotionEvent.ACTION_DOWN
或MotionEvent.ACTION_UP
。這些是用戶按下視圖(向下)或釋放按下(向上)時的相應事件。 只需做出相應的反應,並將圖像設置爲您的ImageView
。
編輯:另一篇文章中提到的狀態列表也可以工作,並且當您想要通過觸摸來更改圖片時,可能會有更優雅的解決方案(因爲它在後臺爲您完成了所有操作)。
這仍然是有用的知道,你會在遲早需要它在別的地方。例如,當您想通過按另一個視圖而不是圖像本身來更改圖像時。