안드로이드스튜디오 (급해요 ㅠㅠ!!고수님들도와주세요)

안드로이드스튜디오 (급해요 ㅠㅠ!!고수님들도와주세요)

작성일 2022.12.14댓글 1건
    게시물 수정 , 삭제는 로그인 필요

리사클러뷰랑 카드뷰 어댑터 리스트 목록을 만들었는데요 버튼 코드는 하나만 사용해서 총 3 개버튼이 생성됐습니다(리스트 목록이 3개라서) 그런담에 이제 이거 버튼 한개로 버튼 클릭시 각각 총 3개의 목록에 있는 내용이 다다르게 한액티비티 안에 넣어서 만들고싶은데 어케해야되나요 ㅠ 좀 더 부연설명하자면 버튼은하나만 만들어서 다똑같은 버튼인데 이걸눌럿을때 첫번째목록에 있는 버튼과 두번째목록에잇는버튼 클릭햇을때 다른화면이 나오게하고싶습니다 ! 나오는 액티비티의 틀은 같고 사진과 텍스트만 다르게하고싶어요 ! 하나의엑티비티로 가능할까요? (설명이 어려우시다면 코드 참조해드릴게요 )



profile_image 익명 작성일 -

RecyclerView라면 RecyclerView.Adapter, RecyclerView.ViewHolder를 이미 상속받아 구현하셨을텐데요,

여기의 onCreateViewHolder나 onBindViewHolder나 ViewHolder자체에서 각 itemView에 있는 위젯에 접근해서 제어할 수 있습니다.

아래 블로그에 내용이 잘 정리되어 일단 공유드립니다.

작성자가 ViewHolder 생성자에서 item자체에 clickListener를 적용하고있는데요,

이를 이용해서 itemView.findViewById(R.id.button); 로 버튼 객체를 얻어오고,

그 버튼 자체에 clickListener를 적용하도록 수정이 가능합니다.

블로그내용중 interface를 이용해 외부에서 clickListener를 구현하고 이를 전달하는 방법을 사용하는데

그와 같이 position을 이용해도되고,

아니면 Adapter에 전달되는 각 item당 OnClickListener 를 각각 전달해서

그걸 이용하도록 해도 됩니다.

public class ViewHolder extends RecyclerView.ViewHolder { ViewHolder(View itemView) { super(itemView) ; Button button = itemView.findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { int pos = getAdapterPosition() ; if (pos != RecyclerView.NO_POSITION) { // 데이터 리스트로부터 아이템 데이터 참조. RecyclerItem item = mData.get(pos) ; // TODO : use item. } } }); } }

인앱결제 소스 좀 도와주세요ㅠㅠ

안녕하세요 안드로이드스튜디오로 게임을 개발하고... 있네요ㅠㅠ 텍스트 파일 main build.gradle AndroidManifest 이거 세개 텍스트파일 첨부하오니 제발 고수님 시간 좀...

안드로이드 스튜디오 오류

안드로이드 스튜디오 실행시키면 이렇게 뜨는데 어떻게 해야하나요? 도와주세요ㅠㅠ급해요!! 로그인 계정에 한글 이름이나, 뛰어 쓰기가 되어 있나요? 대부분의 개발환경을...

인앱결제 소스 좀 도와주세요ㅠㅠ

안녕하세요 안드로이드스튜디오로 게임을 개발하고 있는 1인... 지우고 ㅠㅠ 텍스트 파일 main build.gradle AndroidManifest 이거 세개 텍스트파일 첨부하오니 제발 고수님 시간 좀...

안드로이드 스튜디오 텍스트 뷰

... 올려봅니다ㅠㅠ 개발 고수님들 제발 도와주세요 예를 들어 같은 라인에 "안녕하세요 지식인 여러분" 이 있다면 '안녕하세요' 클릭 시 다른 화면으로 전환되고, '지식인...

(급해요!)안드로이드 스튜디오 기기...

안드로이드폰 중에서 노트5를 pc에 연결하고자 합니다. 노트5 개발자 모드 활성화하는... 않는걸까요ㅠㅠㅠㅠ 아시는 분 도와주세요ㅜㅜㅜㅜㅜㅜㅜㅜ 기본적인건 다...