안녕하세요~
제목과 같이;; selector에 관해 두가지 질문을 드리려고 합니다~
1. listview에서 child widget의 selector 제어
listview의 item으로 추가 되는 xml을 다음과 같이 사용하고 있습니다.
- parent : linear layout
- child1 : text view
- child2 : button
세 가지 모두 background로 selector를 지정해 주었습니다.
제가 원하는 동작은 이렇습니다.
1) 리스트 아이템이 클릭 될 때 linear layout과 textview에 지정된 셀렉터는 동작하되 버튼은 normal 상태로 유지된다.
2) 버튼이 클릭되면 버튼의 셀렉터만 동작한다.
위 동작처럼 하려고 검색도 많이 해보고 안드로이드 소스도 봤는데.. 잘 감이 안 옵니다ㅠㅠ;
버튼의 셀렉터만 핸들링 하는 방법을.. 잘 모르겠네요;; 제가 실력이 부족해서리..
현재는 버튼을 사용하지 않고, 이미지뷰로 사용해서 touch up/down에서 일일이 normal/select 이미지를 변경해주고 있습니다.
그런데 이렇게 쓰니 onClick으로 쓸 때보다 반응속도가 느리고, (에뮬이라서 그럴지도-.-;;)
down->move 후 up 했을 때 해당 이미지뷰 영역을 벗어나면 예외처리를 해주기가... 제 실력으로는 좀 힘드네요~;;;
2. layout이 클릭 될 때, child widget의 selector를 동작
여기에서도 세 가지 모두 background로 selector를 지정해 주었습니다.
linear layout을 클릭했을 때 child인 textview의 셀렉터를 함께 동작시키는 것이 궁금한데요..
사실, 리스트뷰에 아이템으로 묶어서 등록하면, 기본적으로 해주는 것과 같은 동작입니다.
이것도 역시 linear layout에 touch up/down이벤트로 해주면 원하는 동작은 가능하지만,
위에서 말씀드렸던 문제들 때문에.. 다른 방법들을 찾고 있습니다.
리스트뷰에서 동일 동작이 되고 있으니, 핸들링 역시 가능할 거 같아서 이래저래 찾아봤는데 이것 역시 좀 힘드네요 ㅠㅠ;
performClick(), dispatch() 등.. 의심 가는 api는 여러 개 시도해봤는데 실패했습니다.
어찌보면 1,2 번 질문의 요지는 selector를 핸들링 하는 것이라고 생각되는데요~
제가 selector 내부 동작을 잘 이해하지 못하고 있는 것 같습니다...쩝..ㅡㅜ;
콕 찝은 답이 아니더라도 의견 있으시면 답글 달아주시길 부탁드립니다~~^^
감사합니다~
+ 공지사항 읽었습니다~~~~