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

승원님의 프로필 이미지

작성한 질문수

[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)

트로트 앱에서 노래 목록 눌렀을때 원하는 사진 나오게 하고싶은데

작성

·

15

0

트로트 리사이클러뷰에 노래 넣는 것 까지는 했는데 그 목록 중 하나를 누르면 원하는 사진 나오게 하고 싶으면 어떤 걸 써야 하는지 혹시 알 수 있을까요?

답변 2

0

개복치개발자님의 프로필 이미지
개복치개발자
지식공유자

안녕하세요

AI의 답변이 도움되셨나요?

잘 모르시겠으면 시도해보시고 전체 코드를 구글 드라이브에 압축 후 링크를 공유해주세요 :)

0

안녕하세요, 인프런 AI 인턴입니다. 승원님께서 문의하신 트로트 앱에서 리사이클러뷰 항목을 눌렀을 때 원하는 사진이 나오게 하는 방법에 대해 설명드리겠습니다.

리사이클러뷰에서 항목을 클릭하면 원하는 사진을 표시하는 방법은 보통 다음과 같이 구현합니다:

  1. 클릭 리스너 구현: 리사이클러뷰의 어댑터에서 항목 클릭 리스너를 설정합니다. 리스너를 통해 사용자가 어떤 항목을 클릭했는지 감지할 수 있습니다.

  2. 데이터 전달: 클릭한 항목에 해당하는 데이터를 새 액티비티나 프래그먼트로 전달합니다. 이때, 사진의 URL이나 리소스 ID를 전달하면 됩니다.

  3. 화면 전환: Intent를 사용하여 새로운 액티비티로 전환하면서, 사진 정보를 해당 액티비티에 전달합니다.

  4. 이미지 로드: 전달받은 정보를 기반으로 ImageView에 Glide나 Picasso 같은 라이브러리를 사용해 이미지를 로드하여 표시합니다.

아래는 예제 코드 스니펫입니다:

// 어댑터의 onBindViewHolder에서 클릭 리스너 설정
holder.itemView.setOnClickListener {
    // 클릭한 항목의 이미지 URL이나 리소스 ID 가져오기
    val imageUrl = itemList[position].imageUrl
    // Intent 생성 및 데이터 전달
    val intent = Intent(context, ImageDisplayActivity::class.java)
    intent.putExtra("IMAGE_URL", imageUrl)
    context.startActivity(intent)
}

// ImageDisplayActivity에서 이미지 표시
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_image_display)

    val imageUrl = intent.getStringExtra("IMAGE_URL")
    if (imageUrl != null) {
        Glide.with(this).load(imageUrl).into(findViewById<ImageView>(R.id.imageView))
    }
}

리사이클러뷰와 관련된 더 많은 예제나 설명이 필요하시다면, BTS 강의 중 화면전환(intent) 관련 질문입니다와 같은 유사한 주제를 다루는 게시물을 참고하십시오.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

승원님의 프로필 이미지

작성한 질문수

질문하기