当前位置:编程学习 > wap >>

求助:LIstView 的每个Item中有两个Button,怎么获得是哪个按钮被点击

因为我要控制Activity里面的控件,所以需要在Activity里来操作,不可以直接给Button设置监听。

所以只能在listView.setOnItemClickListener(new OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> arg0, View view,
int position, long id) {
// TODO Auto-generated method stub


}
});
里操作,请问怎么得到是Item中哪个按钮被点击了呢 --------------------编程问答-------------------- 用onItemClick是不行的,必须给每个按钮设置监听,在getView里设置监听 --------------------编程问答-------------------- 因我需要点击这个按钮,就要隐藏这个listiew,可是没有效果 --------------------编程问答--------------------
引用楼主  的回复:
因为我要控制Activity里面的控件,所以需要在Activity里来操作,不可以直接给Button设置监听。

所以只能在listView.setOnItemClickListener(new OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> arg0, View view,
int p……


因我需要点击这个按钮,就要隐藏这个listiew,可是没有效果 --------------------编程问答-------------------- 你listview设置数据源用的什么方法 --------------------编程问答-------------------- 需要的getView里面单独实现点击 --------------------编程问答--------------------
引用 5 楼  的回复:
需要的getView里面单独实现点击


我的每个Item都是一个Linearlayout。
不能在getView里实现,是因为,我要在Activity里做操作,如果在getiew里是加监听了,但是我想改变Acitivity里的button.settext("1111");这样是不能改变BUtton的值的。

所以我就想获得是item里的第几项click的 --------------------编程问答--------------------
引用 6 楼  的回复:
引用 5 楼  的回复:

需要的getView里面单独实现点击


我的每个Item都是一个Linearlayout。
不能在getView里实现,是因为,我要在Activity里做操作,如果在getiew里是加监听了,但是我想改变Acitivity里的button.settext("1111");这样是不能改变BUtton的值的。

所以我就想获得是item里的第几项clic……


当然可以改变Utton的值啊,怎么就不能了 --------------------编程问答--------------------
引用 7 楼  的回复:
引用 6 楼  的回复:

引用 5 楼  的回复:

需要的getView里面单独实现点击


我的每个Item都是一个Linearlayout。
不能在getView里实现,是因为,我要在Activity里做操作,如果在getiew里是加监听了,但是我想改变Acitivity里的button.settext("1111");这样是不能改变BUtton的值的。

所以我就想……



问题我已经解决了。通过写回调方法解决的,如果大家有希望知道的,可以给我发站内信。


--------------------编程问答-------------------- 没那么麻烦吧...是不是你搞复杂了? --------------------编程问答--------------------
引用 9 楼  的回复:
没那么麻烦吧...是不是你搞复杂了?


你只能setText上你的Item上的控件,并不可以设置activity上listivew以外的控件。根本就不在一个线程内。 --------------------编程问答--------------------
引用 10 楼  的回复:
引用 9 楼  的回复:

没那么麻烦吧...是不是你搞复杂了?


你只能setText上你的Item上的控件,并不可以设置activity上listivew以外的控件。根本就不在一个线程内。

可以设置的,是你控件声明放错位置了
声明private Button btn_ok;
在oncreate里初始化,就可以在整个activity里使用了 --------------------编程问答--------------------
引用 11 楼  的回复:
引用 10 楼  的回复:

引用 9 楼  的回复:

没那么麻烦吧...是不是你搞复杂了?


你只能setText上你的Item上的控件,并不可以设置activity上listivew以外的控件。根本就不在一个线程内。

可以设置的,是你控件声明放错位置了
声明private Button btn_ok;
在oncreate里初始化,就可以在整个activity里使用……



那个button不是activity里面的。是BaseAdapter里面的,那个ViewHOlder里定义的 --------------------编程问答-------------------- 沙发。。。。。。。。。。 --------------------编程问答-------------------- 在Listview的adaper的getView方法中做处理。 --------------------编程问答-------------------- hi,楼主,这个怎么回调的方法,能讲一下么??谢谢哈~~ --------------------编程问答-------------------- 求解呀
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,