마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

리스너에 리스트뷰를 넣으려고 하는데요.. ㅠㅠ

0 추천

리스너에 리스트 뷰를 넣으려고 하고 있습니다. 

각각 리스너로 값이 나오고 그 값에 맞는 리스트뷰 항목이 나옵니다

나온 리스트뷰 항목을 클릭할 시 항목에 맞는 새로운 엑티비티로 넘어가게 하려고 합니다

 

list.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View v,int position, long id) {
            Intent myIntent = new Intent(getBaseContext(),newframe.class);
            myIntent.putExtra("num",position );
            startActivity(myIntent);
         }
      });
   }
 
일단 하나의 리스너 버튼에 관해서는 position을 받아서 position에 따라 리스트항목을 구분할 수 있겠는데
 
리스너 버튼이 바뀌어도 값이 똑같은데 이부분에 대해서 모르겠습니다.. ㅠㅠ
 
포지션값 말고 다른 값을 또 받아서 리스너 버튼끼리 구분할 수 없을까요..??  
 
그러니깐 예를 들면  리스너에서 걸그룹을 고릅니다 만약 걸스데이를 고르면 걸스데이 멤버가
 
리스트뷰로 나오고 이 리스트뷰에서 멤버를 클릭하면 그 멤버에 관한 자세한 정보가 나오게 만들고 싶습니다.
 
지금 현재 상황은 리스너에서 걸스데이가 리스너에 처음부분이고 리스트에 포지션 0이 유라라고 하면
 
리스너에서 다른 소녀시대를 고르고 그 리스트에 포지션 0번인 윤아를 누르면
 
윤아에 대한 정보가 나왔으면 좋겠는데  포지션 0번인 유라에 관한 정보가 계속 나오는 상태입니다..
 
ㅠㅠ 어떻게 하면 좋을까요.. 
 
익명사용자 님이 2014년 11월 7일 질문
구글이든 어디든간에 리스트뷰 클릭 이런거 예제 검색하시면 많이 나와요.
지금 포지션값을 따로 다 잡아서, 각 포지션값에 따라서 if문등으로 다른 액티비티로 넘어가야 하는데, 포지션값을 못잡는거같으니 자료 보시면서 해보세요

1개의 답변

0 추천
전체적인 코드가 없어서 정확한 원인을 모르겠지만 position값은 제대로 나오는지, adapter에서 getItem(position)이 잘 오버라이드 됐는지를 먼저 확인 하셔야 할 듯 합니다.

다른 값을 받고 싶으시다면 직접 리스너를 구현하셔야 합니다. 리스트뷰 항목에 버튼같은 뷰를 추가한 '커스텀 리스트뷰'에 대해 많이 있으니 찾아보시고 참고하세요
hahohehi (1,250 포인트) 님이 2014년 11월 10일 답변
...