ImageView внутри ScrollView с событием onTouch() или onClick()
У меня есть ImageView
внутри ScrollView
, ImageView
кликабелен и открывает новый Activity
,
Всякий раз, когда я прокручиваю свой ScrollView, сначала дотрагиваясь до изображения (но пока не отпуская палец), и пытаюсь прокрутить его, срабатывает мой onTouch()
или же onClick()
метод (я пробовал с обоими...)
Вот мой код:
btnAdd.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
Intent intent = new Intent(Intent.ACTION_EDIT);
startActivity(intent);
return true;
}
});
Как я уже сказал, я также пытался с onClick()
...
Что я делаю неправильно?
1 ответ
Решение
Когда OnTouchListener запускается, он прослушивает несколько действий (Action Down, Action Up и т. Д.) И выполняет их все, поэтому вы должны точно указать, когда вы хотите начать новое действие (в вашем случае для Action Up). Поэтому попробуйте использовать это:
btnAdd.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_UP){
Intent intent = new Intent(Intent.ACTION_EDIT);
startActivity(intent);
}
return true;
}
});