1
我嘗試使imageview可點擊。 實際上它是可點擊的,所以我可以在用戶觸摸圖像視圖後調用一個Intent。 但我很努力地改變觸摸的圖像。ImageView和touchListener
我想以下幾點:
- 默認(無觸摸):此搜索
- 用戶觸摸的ImageView:改變鏡像2
- 用手指用戶移出的ImageView的:改回此搜索 (無需調用意圖)
- 用戶untouches imageview的:打電話意圖,然後切換回此搜索
這些東西中的一部分與以下代碼一起工作:
final ImageView v = (ImageView) findViewById(R.id.profileImage);
v.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View arg0, MotionEvent arg1) {
switch (arg1.getAction()) {
case MotionEvent.ACTION_DOWN: {
v.setImageResource(R.drawable.ic_contact_picture_down);
break;
}
case MotionEvent.ACTION_CANCEL:{
v.setImageResource(R.drawable.ic_contact_picture);
break;
}
case MotionEvent.ACTION_UP: {
takePhoto();
v.setImageResource(R.drawable.ic_contact_picture);
break;
}
}
return true;
}
});
圖像觸摸正確地改變爲image2。所以ACTION_DOWN正在工作。 如果用戶不改變圖像視圖,則調用ACTION_UP。但是如果在圖像視圖之外完成觸摸,也會被調用。如果發生這種情況,我想切換到image1但不能調用takePhoto()函數。 ACTION_CANCEL從未被調用,我認爲這是上述情況的候選人。
我已經嘗試過,現在如果我移動到圖像外面,它會設置圖像。但是仍然會調用ACTION_UP,雖然我不接觸圖像。所以我只是在那裏添加了如果聲明。現在工作 – tobias