Dev/Android
부모 레이아웃과 자식 레이아웃의 클릭 리스너 트리거 - DuplicateParentState
healthyryu
2018. 3. 13. 15:43
부모 레이아웃과 자식 레이아웃에 동일한 클릭 리스너 적용하기
하위 레이아웃의 클릭 반응이 상위 레이아웃에 동일하게 클릭 리스너가 적용하기 위해서 DuplicateParentState 속성을 추가해 줘야한다.
android:duplicateParentState="true"
참고 : https://stackoverflow.com/a/8050279/3897810
구현에 따른 생각 과정 :
나의 경우, 위와 같은 버튼을 만들었다. 중간의 사진을 제외하고는 레이아웃으로 쪼개서 구현하였기 때문에 레이아웃이 파편화 되어있다.
그런데 저 버튼 전체가 클릭 리스너 반응이 적용되야 했다. 그런데 레이아웃이 파편화 되어있기에 하나씩 id 를 부여하고 리스너를 줘야하는가 라는 생각을 했고, 아니다라는 생각으로 해당 레이아웃을 구현한 부모 레이아웃에만 id 를 부여하고 클릭 리스너를 적용하길 원했다.
결과적으로 부모 레이아웃에 duplicateparentstate 속성을 true 로 주고 전체 레이아웃이 동일한 클릭 리스너를 적용하도록 했다.
반응형