Programing

Android : 긴 클릭으로 일반 클릭이 발생하는 이유는 무엇입니까?

lottogame 2020. 7. 19. 09:51
반응형

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

반응형