Android : 긴 클릭으로 일반 클릭이 발생하는 이유는 무엇입니까?
긴 클릭과 일반 클릭에 대한 리스너가있는 ListView가 있습니다.
왜 목록 항목을 길게 누르면 일반 클릭 이벤트도 호출됩니까?
클릭마다 다른 두 가지 기능이 필요합니다.
에서 이벤트 리스너 :
onLongClick () -이벤트를 소비했는지 여부를 나타 내기 위해 부울을 반환합니다. 즉, 이벤트를 처리했으며 여기서 중지해야 함을 나타내려면 true를 리턴하십시오. 처리하지 않았거나 이벤트가 다른 클릭 리스너에게 계속 전달되면 false를 반환합니다.
true
에서 돌아와서 onLongClick()
일반 클릭 이벤트가 계속 발생합니까?
추가 편집 : ListView의 경우을 사용 중일 수 있습니다 OnItemLongClickListener
. 는 onItemLongClick()
이 이벤트를 소비 여부를 나타내는 유사한 부울 반환 값이 사용합니다.
더 간단한 용어로 답을 회복하십시오.
주어진:
@Override
public boolean onLongClick(View view) {
return true; // or false
}
return true
이벤트가 소비되었음을 의미합니다. 처리됩니다. 다른 클릭 이벤트는 통지되지 않습니다.return false
이벤트가 소비되지 않음을 의미합니다. 다른 클릭 이벤트는 계속 알림을받습니다.
따라서. onClick
이후에도 트리거 되지 않으려면 이벤트 에서 시작 onLongClick
해야 return true
합니다 onLongClick
.
메소드를 대체 OnClickListener
하고 있는지 확인하십시오 onClick
. 또한이 무시되어 있는지 확인 OnLongClickListener
당신을위한 onLongClick
방법. 그리고 확인하십시오 있는지 확인 onLongClick
메소드가 리턴 true
이 같은이의 소모됩니다 onClick
.
참고 URL : https://stackoverflow.com/questions/5428077/android-why-does-long-click-also-trigger-a-normal-click
'Programing' 카테고리의 다른 글
Java ME에서 JSON 문자열을 객체로 변환 하시겠습니까? (0) | 2020.07.19 |
---|---|
MAC OSX 10.9에서 JAVA_HOME 환경 변수 설정 (0) | 2020.07.19 |
일반 영어로 된 WSGI와 CGI는 무엇입니까? (0) | 2020.07.19 |
HTML 5 (0) | 2020.07.19 |
ggplot2 boxplot에서 특이 값 무시 (0) | 2020.07.19 |