问题标签 [android-touch-event]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 为什么在 Lollipop 中模拟触摸事件不起作用
我想将触摸事件注入设备。我为此使用仪器。该方法适用Jelly Bean
于Lollipop
.
当我搜索时,我发现这可能是由于执行SELinux
它会阻止出于安全目的执行某些操作。我下载SELinux Mode Changer
并设置SELinux
为permissive
,并permissive
通过About phone
在settings
. 我的设备已植根,我尝试过使用su
和不使用它。但是,我真的不知道问题出在哪里。
这是我的代码:
supoliciy
正如您在上面的代码中看到的那样,我什至尝试执行,但没有任何效果。
我怎么解决这个问题?
android - 在android中垂直处理屏幕上的触摸
我正在VideoView
以横向模式播放来自网络的视频。现在我想在屏幕上垂直移动手指时控制它的音量。当我向下滚动到向上时,音量应该会增加,当我向上滚动手指到向下时,音量应该会减小。我怎样才能获得这种类型的控制?
android - 卡在 ListView 中的 Android 触摸事件
我有一个View
应该处理触摸的容器。它具有Listview
with overrided onTouch()
,它返回false
(true
当容器通过滑动展开时它将返回)。当Listview
触摸发生时,它传递到容器View
并且一切正常。但我需要为Listview
.
当我onClickListener
为项目设置时,我在日志中看到它没有MotionEvent
传递给容器,它被卡在了ListView
onTouch()
(返回false
并且什么都不做)。我正在尝试onTouchListener
为这样的项目设置:
但结果是一样的。有人可以解释为什么我的容器没有收到触摸事件甚至ListView
返回false
它的覆盖onTouch()
吗?
android - 从服务注入触摸事件 - Android
我想从设置为前台服务的服务中注入触摸事件(它在通知栏中保留通知)。我的设备已植根,我的应用程序设置为系统应用程序。我已将设备设置为显示开发人员选项中的触摸手势以跟踪该过程。有两个问题:
有时当我调用注入代码时,设备没有出现触摸手势,这意味着触摸事件没有被注入。
如果触摸发生并且我在屏幕上看到手势,有时它会执行模拟触摸应该发生的动作,有时则不会。我注意到如果触摸是模拟的,prs(触摸施加的压力)的值为0,而普通手指触摸的prs大于0。似乎prs需要> 0才能模拟触摸以执行操作。
我无法弄清楚为什么会发生这种情况,这是服务中的注入代码:
我怎么解决这个问题?任何帮助表示赞赏。
android-recyclerview - 在 RecyclerViewPager 中添加 Recyclerview
我添加了Recyclerview
一项RecyclerViewPager
(https://github.com/lsjwzh/RecyclerViewPager)。RecyclerView
当我触摸它时,我想滚动它。
我努力了 :
但有时我只能滚动 RecyclerView。
我认为可以通过实施NestedScrollingParent
或RecyclerViewPager
更改onTouchEvent
来解决它RecyclerViewPager
。但我不熟悉它们。
android - Youtube API - 传递给 Youtube 播放器背后的视图的触摸事件
我YoutubeAndroidPlayerAPI
在我的 Android 应用程序中使用 a 。
在我的YouTubePlayerSupportFragment
设置youtubePlayer.addFullscreenControlFlag(YouTubePlayer.FULLSCREEN_FLAG_CUSTOM_LAYOUT);
中,我可以在全屏之间切换,而不必每次都重新缓冲。
为此,我删除了导航栏,请参阅我之前关于它的SO问题。所以现在玩家玩得很好。但不知何故,触摸事件在播放器后面传递(即到 youtube 播放器后面的视图),但仅当触摸事件低于播放器的 SeekBar 时(在全屏模式下)。
有没有解决这个问题的方法?
有人知道有关此问题的任何未解决问题吗?
android - 竞争 onTouchEvent 处理程序?
onTouchEvent
我了解 Views 可以通过在传递ACTION_DOWN
事件时返回 true 来决定自己处理 MotionEvent 。如果他们返回true
,那么他们将收到所有后续MOVE/UP/CANCEL
事件。这工作正常。
我想做的是将这个决定推迟到ACTION_MOVE
事件中。我有一个 ViewGroup 包含一个孩子,如果水平或垂直滚动,我希望 ViewGroup 或 Child 负责处理MotionEvents
就像是:
那可能吗 ?现在,只有 ViewGroup 会收到MOVE/UP/CANCEL
. 我猜是因为它没有找到合适的孩子来转发意见。
android - android - 如何处理子级和父级中的所有 onTouch 事件
我RecyclerView
有自定义视图,它处理onTouch
事件并在ACTION_UP
处理时做一些工作。我还想onTouch
在我的根视图中获取手势和处理事件。我需要处理完整的事件:ACTION_DOWN
......ACTION_UP
在我的两种观点中。
但我有问题:
- 如果我
true
在自定义视图中返回,它会处理其他事件并且工作正常,但onTouch
我的根视图中的事件不会调用。 - 如果我
false
在我的自定义视图中返回它只会处理ACTION_DOWN
并且不起作用,但是我的根视图会获取所有事件并且可以正常工作。
那么,如何处理子视图和根视图中的所有事件?
android - 如何:允许 ViewPager 正常运行,同时将触摸事件传递给 ViewPager 重叠的视图
我有一个 TabLayout 和一个包含选项卡的 ViewPager。
ViewPager 位于 TabLayout 上方,因此 ViewPager 与 TabLayout 重叠,因此,在不同选项卡之间导航的 TabLayout 按钮不起作用,因为 ViewPager 正在拦截触摸事件。
我试图通过调用requestDisallowInterceptTouchEvent(true)
ViewPager 来解决这个问题,但它没有解决这个问题。
我还创建了一个自定义 ViewPager 并覆盖了 onTouchEvent() 方法,如下所示:
这允许 TabLayout 选项卡按钮接收触摸事件,但当 ViewPager 滚动足够多时,ViewPager 不会自动滚动到不同的片段。
简而言之,问题是:如何允许 ViewPager 重叠的 TabLayout 接收 ViewPager 在 TabLayout 之前拦截的触摸事件,同时允许 ViewPager 正常运行?
提前致谢
编辑:
这是 Activity 的基本 XML 表示:
注意:我通过将 TabLayout 片段的上边距设置为足以让它们显示在 TabLayout 下方,从而使 ViewPager 页面看起来位于 TabLayout 下方
onClick
这是ViewPager 内的视图(用于显示其他全屏视图的功能)展开之前的 Activity 基本图
这是在寻呼机中单击视图显示其他内容后我的 Activity 的基本图:
您可以在第二张图中看到 TabLayout 被 ViewPager 内容覆盖