我正在Android應用程序中,我有一個ImageView,它直接在XML中設置(默認圖像)。現在,當用戶點擊圖片時,我想只用另一張圖片進行更改,以便用戶知道它已被按下。當我擡頭時,我可以找到onClickListener,但是這改變了圖像,並且不會恢復到原來的。我只是想找一些方法來顯示按鈕被按下。Android:更改圖像,當用戶單擊並將其設置爲原始
XML代碼:
<ImageView
android:id="@+id/shirtImage"
android:layout_width="75dp"
android:layout_height="75dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:layout_gravity="center"
android:layout_marginLeft="30dp"
android:layout_marginStart="30dp"
android:alpha="0.8"
android:src="@drawable/shirt" />
活動代碼:
@Override
protected void onCreate(Bundle savedInstanceState) {
shirt = (ImageView)findViewById(R.id.shirtImage);
shirt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
shirt.setImageResource(R.drawable.shirtactive);
}
});
}
謝謝。
更新代碼
shirt.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_DOWN){
shirt.startAnimation(animationFadeIn);
shirt.setImageResource(R.drawable.shirtactive);
return true;
}
else if(event.getAction() == MotionEvent.ACTION_UP){
shirt.startAnimation(animationFadeOut);
shirt.setImageResource(R.drawable.shirt);
return true;
}
return false;
}
});
如何使用此功能獲得印刷機的淡入效果? –
@ WeareBorg如果您將使用第一個變體,那麼在動作下降和動作上可以做任何你想做的事情。我會在我的回答中添加示例 –