嘿,我做了一个自定义视图组扩展了相对布局并覆盖了 onTouchEvent(),并且总是在 onTouchEvent() 中返回 true。我将此自定义视图组作为我的列表视图的项目布局。我还为列表视图添加了 onItemClick 侦听器。但我无法为我的列表视图接收 onItemClick 事件!有人可以帮助我吗?
非常感谢!!!
嘿,我做了一个自定义视图组扩展了相对布局并覆盖了 onTouchEvent(),并且总是在 onTouchEvent() 中返回 true。我将此自定义视图组作为我的列表视图的项目布局。我还为列表视图添加了 onItemClick 侦听器。但我无法为我的列表视图接收 onItemClick 事件!有人可以帮助我吗?
非常感谢!!!
只是在适配器类 getView (...) 中定义 onitemclick 我认为它会为你工作
public View getView(final int position, View convertView, ViewGroup parent) {
View vi=convertView;
if(convertView==null)
vi = inflater.inflate(R.layout.list_row, null);
vi.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
}
});
问题是您总是true
从 ViewGroup 的onTouchEvent(MotionEvent)
方法返回。这意味着您的相对布局负责处理此触摸事件。阅读 android 文档以获取更多信息http://developer.android.com/training/gestures/viewgroup.html
就您的问题而言,我想仅使用 onitemClick 事件就足够了
如果在 中返回 true onTouchEvent()
,则事件会被处理,因此不会冒泡到 ListView。尝试返回 false。