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

前面已经说过,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);
				}
			});	

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值