Dev/Android

부모 레이아웃과 자식 레이아웃의 클릭 리스너 트리거 - DuplicateParentState

healthyryu 2018. 3. 13. 15:43

부모 레이아웃과 자식 레이아웃에 동일한 클릭 리스너 적용하기



하위 레이아웃의 클릭 반응이 상위 레이아웃에 동일하게 클릭 리스너가 적용하기 위해서 DuplicateParentState 속성을 추가해 줘야한다.

android:duplicateParentState="true"

참고 : https://stackoverflow.com/a/8050279/3897810



구현에 따른 생각 과정 :

나의 경우, 위와 같은 버튼을 만들었다. 중간의 사진을 제외하고는 레이아웃으로 쪼개서 구현하였기 때문에 레이아웃이 파편화 되어있다.

그런데 저 버튼 전체가 클릭 리스너 반응이 적용되야 했다. 그런데 레이아웃이 파편화 되어있기에 하나씩 id 를 부여하고 리스너를 줘야하는가 라는 생각을 했고, 아니다라는 생각으로 해당 레이아웃을 구현한 부모 레이아웃에만 id 를 부여하고 클릭 리스너를 적용하길 원했다.

결과적으로 부모 레이아웃에 duplicateparentstate 속성을 true 로 주고 전체 레이아웃이 동일한 클릭 리스너를 적용하도록 했다.

반응형