您的位置:首页 > 其它

GridView多个按钮获取监听( setTag()/getTag()应用 )

2014-05-07 17:22 274 查看
前面已经说过,GridView内部的按钮与GridView的OnItemClick会发生冲突。冲突解决之后,要给按键添加监听,每个Item内部只有一个按钮,点击Item与按键的监听可以为一个,多个按钮,可以再Adapter的getView中为其添加监听。

(1)setTag(index)

View中的setTag(Onbect)表示给View添加一个格外的数据,以后可以用getTag()将这个数据取出来。可以用在多个Button添加一个监听器,每个Button都设置不同的setTag。这个监听器就通过getTag来分辨是哪个Button 被按下。

(2)点击按钮,按钮上的字交替变化

在GridView中,点击按钮,判断当前行的按钮是True还是False,必须先通过getTag()获取当前行,然后通过list.get(dd).isA()获取当前button的状态(A是标记Button的状态的,在GridInfo中)

holder.present_speak.setTag(index);
holder.present_speak.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
int dd=(Integer) v.getTag();
boolean temp = list.get(dd).isA();
if(!temp) ((TextView) v).setText("禁言");
else ((TextView) v).setText("发言");
list.get(dd).setA(!temp);
}
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: