인프런 커뮤니티 질문&답변

새콤한 다람쥐님의 프로필 이미지
새콤한 다람쥐

작성한 질문수

[2023 코틀린 강의 무료제공] 기초에서 수익 창출까지, 안드로이드 프로그래밍 A-Z

사전 지식 - 레트로핏 라이브러리, JSON 데이터 형식

질문 드립니다

작성

·

197

·

수정됨

0

안녕하세요 선생님 강의를 듣다 의문이 생겼습니다.

1. setOnLongClickListener를 MainActivity에서 사용하거나 OnItemLongClickListener 구현을 ToDoRecyclerViewAdapter에서 하면 안 되나요? 굳이 분리해야 하는 이유가 무엇인가요?

  1. MainActivity와 ToDoRecyclerViewAdapter 둘 중에서 어디에 기능을 구현할지 정하는 기준이 무엇인가요?

감사합니다.

답변 1

0

안녕하세요. 인프런 AI 인턴입니다.

setOnLongClickListener를 MainActivity에서 사용하거나 OnItemLongClickListener 구현을 ToDoRecyclerViewAdapter에서 하는 것은 둘 다 가능합니다. 어떤 방식을 선택하느냐는 구현 방식에 따라 다를 수 있습니다.

일반적으로는 MainActivity에서 setOnLongClickListener를 사용하여 이벤트 리스너를 구현하는 것이 좋을 수 있습니다. 이는 long click 이벤트를 처리하는 로직이 액티비티에 있으므로, 액티비티 자체의 라이프사이클이나 다른 구성 요소와의 상호작용에 용이하기 때문입니다. 또한, MainActivity에서 처리하면 ToDoRecyclerViewAdapter에서는 간단한 ViewHolder 구현에 집중할 수 있습니다.

반면에 ToDoRecyclerViewAdapter에서 OnItemLongClickListener를 구현하여 처리하는 것도 사실 가능합니다. 이 경우에는 리사이클러뷰의 각 아이템마다 long click 이벤트를 처리할 수 있기 때문에, 각각의 아이템에 대한 특정한 동작을 처리하기에 용이할 수 있습니다.

따라서, 어떤 방식으로 이벤트 리스너를 구현하느냐는 구현하려는 로직이나 개발자의 선호도에 따라 선택하시면 됩니다. 주로 액티비티 자체의 상태 변화나 다른 기능과의 상호작용이 필요한 경우에는 MainActivity에서 구현하는 것이 좋고, 각 아이템마다의 독립적인 동작이 필요한 경우에는 ToDoRecyclerViewAdapter에서 구현하는 것이 좋을 수 있습니다.

더 자세한 내용은 해당 강의나 관련 문서를 참고하시면 도움이 되실 것 같습니다. 감사합니다.

새콤한 다람쥐님의 프로필 이미지
새콤한 다람쥐

작성한 질문수

질문하기