부모 레이아웃과 자식 레이아웃에 동일한 클릭 리스너 적용하기
하위 레이아웃의 클릭 반응이 상위 레이아웃에 동일하게 클릭 리스너가 적용하기 위해서 DuplicateParentState 속성을 추가해 줘야한다.
android:duplicateParentState="true"
참고 : https://stackoverflow.com/a/8050279/3897810
구현에 따른 생각 과정 :
나의 경우, 위와 같은 버튼을 만들었다. 중간의 사진을 제외하고는 레이아웃으로 쪼개서 구현하였기 때문에 레이아웃이 파편화 되어있다.
그런데 저 버튼 전체가 클릭 리스너 반응이 적용되야 했다. 그런데 레이아웃이 파편화 되어있기에 하나씩 id 를 부여하고 리스너를 줘야하는가 라는 생각을 했고, 아니다라는 생각으로 해당 레이아웃을 구현한 부모 레이아웃에만 id 를 부여하고 클릭 리스너를 적용하길 원했다.
결과적으로 부모 레이아웃에 duplicateparentstate 속성을 true 로 주고 전체 레이아웃이 동일한 클릭 리스너를 적용하도록 했다.
반응형
'Dev > Android' 카테고리의 다른 글
AndroidStudio - fabric 로그 아웃 방법 (0) | 2018.03.21 |
---|---|
카메라 셔터 소리 켜기 - Camera Sound Turn On (0) | 2018.03.14 |
이 앱은 기기에 최적화되어 있지 않을 수도 있습니다. (8) | 2018.03.12 |
View Margin 설정(코드) - setting margin programmatically (0) | 2018.02.23 |
원하는 View 스크린샷 뜨기 - Take a ScreenShot (0) | 2018.02.12 |