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

커스텀 리스트뷰 터치시 이벤트

0 추천
커스텀 리스트뷰를 만들었을 때,

 

커스텀 리스트뷰 터치시 웹 서버로 데이터를 전송하려고 한다면,

 

제가 어떤 리스트를 터치했는지 어덯게 구분하나요 ??

 

index로 구분하는건 힘들것같고 터치한 리스트뷰 자체의 데이터를 읽어들일 수 있나요 ??

 

예를들어 5번째 리스트뷰의 내용에 체크박스,이미지뷰,텍스트 등이 있다면

 

터치시 웹서버로 해당 리스트의 체크내용, 이미지url, 텍스트내용을 보내고싶습니다.

 

리스트는 언제든지 추가,삭제가 되니 인덱스로 하드코딩하는건 아닌것같은데

 

어떻게 해야하나요 ??
음무 (17,820 포인트) 님이 2014년 2월 3일 질문

2개의 답변

+1 추천
 
채택된 답변
mListView.setAdapter(adapter); 하신부분있죠

setAdapter에 넣을때 List<?>안에 내용을넣어서 setAdapter(adapter)했을겁니다

setOnItemClickListener를 오버라이드하시면

해당 row를 터치시 position이라는 파라미터에 List를 넣어준 index를 구분할수있게 몇번째라고 나옵니다. 모르시면

Log.v("test", "position = " + position);해서 몇번째인지 찍어보시고

클래스명 name = 어댑터에 넣어준리스트.get(position); 이렇게하거나

getItem에 list에 대한 객체 정보들을 넣어주셨다면

값으로 구분하여  = adapter.getItem(position);해도 뽑아올수있습니다.
whdrb19 (23,520 포인트) 님이 2014년 2월 3일 답변
음무님이 2014년 2월 5일 채택됨
잘 모르겠습니다. 포지션은 onItemClickListener을 통해 받아오는데

리스트뷰의 구성은 이미지뷰하나,텍스트뷰2개인데 해당 인덱스의 이녀석들을 어떻게받아오는지 ..

혹시 소스코드 보여드리면 도움좀 얻을 수 있을까요 ?
네...소스코드 쪽지로 보내 주시면 처리해드리겠습니다
혹시 답장 주셨는데 제가 못보고있나 싶어서 다시 댓글씁니다.
쪽지확인하는법을 모르겠네요 .. 보내드리긴했습니다
0 추천

mListView.setOnItemClickListener(new OnItemClickListener() {
	@Override
	public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
               //int position값으로 찾아서 보내면 되지않을까요..??
	}
});

 

bangbang (8,820 포인트) 님이 2014년 2월 3일 답변
...