2011-01-11 5 views
0

저는 (LinearLayout에서) 사용자 지정 구성 요소의 목록을 표시하는 활동이 있습니다. 각 구성 요소는 데이터베이스의 사용자를 나타내며 버튼을 포함합니다 (다른 것들 중에서). 사용자 지정 구성 요소에서 단추를 클릭하면 메시지를 다시 Activity에 전달하여 사용자를 저장하려고합니다. 단추는 사용자의 ID를 알고 있습니다.이벤트의 적절한 사용

나는 활동으로 다시 의사 소통하는 가장 좋은 방법이 궁금합니다. 버튼의 클릭 이벤트에서 새 이벤트를 보내야합니다 (활동에서 catch). 그렇다면 사용자 ID를 이벤트에 추가 할 수 있습니까? 나는 이벤트에 익숙하지 않지만 내 자신 만의 이벤트 유형을 만들 필요가 있다고 생각합니까?

내가 생각한 다른 방법은 액티비티에 대한 참조를 구성 요소로 전달하여 버튼이 단지 'component.parentActivity = this'와 같은 액티비티의 메소드를 호출 할 수 있도록하는 것이지만 작동한다고 생각하지만, 나는 그것을하는 '적절한'방법인지 확실하지 않습니다.

감사합니다.

답변

0

View.OnClickListener 인터페이스를 구현할 수 있습니다. 구현해야하는 onClick 메소드에는 전달 된 View (보기)가 전달됩니다. 따라서 클릭 한 내용에 대한 모든 세부 정보를 갖고 있어야하므로 원하는 방식으로 처리 할 수 ​​있습니다.

귀하의 질문에 명확하지 않은 것은 '구성 요소'가 의미하는 바가 무엇입니까? 그것은 사용자 정의보기입니까? 또는 뷰 레이아웃? 아니면 다른?

+0

죄송합니다. 사용자 설정보기입니다. LinearLayout을 확장 한 자바 클래스이고, 자식보기 및 다른 몇 가지 버튼으로 버튼을 추가합니다. 팁 주셔서 감사. 이벤트와 같은 사운드가 적절한 방법이며, 내 액티비티는 View.OnClickListener를 구현해야 이벤트를 잡을 수 있습니다 (오해가있는 경우 수정하십시오). 감사합니다 – Richard

+0

그 위대한 감사 작품. 나는 내 자신의 이벤트 유형을 만들어야한다고 생각했지만 표준 이벤트 처리는 내가 필요로하는 것에 대해 훌륭하게 작동한다. – Richard