您的位置:首页 > 移动开发 > Android开发

ListView中点击事件无法响应

2013-06-20 16:40 323 查看
当ListView的Item中包含Button、ImageButto等控件时,会导致item无法获取焦点,从而无法响应点击事件。

这时候需要设置所有子控件无法焦点:可以使用


android:focusable="false"


或在item layout文件中设置
android:descendantFocusability="blocksDescendants"


这样item就可以获取Item的点击事件,但子控件中的Button仍然无法响应。

需要自定义一个Adapter,重写getView()方法。

这里就以SimpleAdapter作为示例:

@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = super.getView(position, convertView, parent);
final int num = position;
ImageButton b = (ImageButton) v.findViewById(R.id.myButton);
b.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
System.out.println("item:"+num+"中的按钮响应");
}
});

return v;
}


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android listview