gpt4 book ai didi

Android 动态壁纸触摸事件层次结构

转载 作者:太空宇宙 更新时间:2023-11-03 11:53:54 25 4
gpt4 key购买 nike

我有一个动态壁纸,它使用各种屏幕触摸来触发特定事件。目前它正在工作,但我似乎得到了所有触摸事件。例如,当用户触摸图标以启动应用程序时,我似乎也收到了该事件。

是否可以确定用户是否触摸了背景屏幕(即图标间的间隙),以便我只能在那个时候采取我的行动而忽略其他人。

如果做不到这一点,(并且假设——可能是错误的——如果我在队列中排在第一位,而不是屏幕上没有其他应用程序在我上面)我可以确定我在触摸事件队列中的位置以便我可以只有当我是队列中的第一个时才采取行动?
或任何其他建议请。谢谢理查德

最佳答案

遇到了同样的问题,最后查看了 Nexus 壁纸的源代码,看看它是如何在那里实现的。

我认为无法确定实际主屏幕是否消耗了触摸。但是,当您点击空白区域时,默认的 Android 主屏幕会向墙纸发送命令。所以在你的引擎中,你可以这样写:

@Override
public Bundle onCommand(String action, int x, int y, int z, Bundle extras, boolean resultRequested) {
if (action.equals(WallpaperManager.COMMAND_TAP)) {
// do whatever you would have done on ACTION_UP
}
return null;
}

关于Android 动态壁纸触摸事件层次结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4298458/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com