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

안드로이드 getTag(), setTag() 질문

0 추천
이런식으로 어레이어뎁터를 만들었는데..
리스트뷰가 6개정도 보여지는데.. 이벤트는 각각 다 걸리는데
저 setTag(position) < 이부분만 마지막값 즉 5밖에 저장이 안되고 각각 저장은 안되네요..
 
각각 저장이 되게는 어떻게하나요?
 
public View getView(int position, View convertview, ViewGroup parent){
LayoutInflater li = (LayoutInflater)con.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertview=li.inflate(R.layout.cardlistview, null);
 
RelativeLayout rl = (RelativeLayout)convertview.findViewById(R.id.lists);
 
rl.setOnLongClickListener(this);
 
rl.setTag(position);
}
 
public boolean onLongClick(View v) {
int count = (int)rl.getTag();
Toast.makeText(getContext(), count+"", Toast.LENGTH_SHORT).show();
if((int)rl.getTag()==count){
Toast.makeText(getContext(), "드루와", Toast.LENGTH_SHORT).show();
}
return false;
}
 
 
tkadks1 (230 포인트) 님이 2015년 1월 28일 질문

2개의 답변

0 추천
final RelativeLayout rl = (RelativeLayout)convertview.findViewById(R.id.lists);

         rl.setTag(position);
         rl.setOnLongClickListener(new OnLongClickListener() {
                public boolean onLongClick(View arg0) {
                    int count = (Integer)rl.getTag();

                    .....

이런식으로 해야겠죠?
nicehee (73,100 포인트) 님이 2015년 1월 28일 답변
이런식으로 했는데 ..그냥 임플리먼트로  문득 하고싶어서 햇는데 안돼서요.. 이방법은 알아요... 이방법은 구지 태그안써도 돼요
0 추천
rl.getTag() 말고 v.getTag()해서 쓰세요
alkyne (22,960 포인트) 님이 2015년 1월 28일 답변
...