android - 如何让触摸事件将焦点保持在它启动的小部件上?

标签 android

假设我有一个 ListView,其中一行是我的自定义 View 。用户在自定义 View 内进行触摸 -> 自定义 View 将处理此触摸事件。用户在自定义 View 的区域内继续此触摸序列 -> 自定义 View 也可以处理这些事件。

问题:当用户将手指拖动到自定义 View 区域之外(拖动开始于内部)时,自定义 View 会丢失触摸事件。但我也需要这些事件,我该如何实现呢?

我知道这是可以做到的:如果您将包含一堆图像的图库放入 LisView 中,然后我开始左右拖动图库,并在执行此操作时将手指拖动到图库区域之外(向上/向下移动太多),我仍然控制 Gallery 滚动,而不是 ListView。

我希望我已经足够清楚了,有人对这个问题有一些提示吗?

最佳答案

根据this post作者:Dianne Hackborn,如果您在 View 的 onTouchEvent() 中对按下事件返回 true,则以下事件将自动发送到该 View 。

关于android - 如何让触摸事件将焦点保持在它启动的小部件上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5654311/

相关文章:

Android AppCompat-v7 和 Firestore gradle 冲突

android - 使用 Nutiteq 为 Android 导入 .mbfiles 扩展文件

java - 第二次加载谷歌地图 fragment 时膨胀 View 上的空指针

android - 进度条和 Espresso

"Application"类的 Android 启动画面

android - 当Fragment处于Resume状态时,如何将TEXT设置为Fragment的TextView?

android - 值得购买 Google Android Dev 手机吗?

android - 共享首选项保存在内存中但不保存到磁盘

编译时的 Android Studio Gradle 错误

java - 从另一个 Activity 调用一个 Activity 的方法