1

我定义了一个视图,上面有 3-4 个项目(按钮、ImageView 等)。View 定义了一个 onLongClickListener:

view.setOnLongClickListener(new OnLongClickListener() { ... }

只要我长按视图的空白部分,效果就很好——但如果我长按我的图像,例如,长按不会被触发。

Android 中是否有让子元素“传递”它们的事件而不需要为每个元素定义 onLongClick 侦听器的方法?

4

1 回答 1

1

我认为如果不在自定义类中覆盖它或创建一个侦听器来传递它,你就无法做到这一点。您可以定义 OnLongClickListener 的单个实例,将其传递给执行类似操作的所有实例

((View.OnLongClickListener)view.getParent()).onLongClick(view)

或者

((View.OnLongClickListener)view.getParent()).onLongClick(root.getParent())
于 2012-10-15T16:55:14.807 回答