onTrackballEvent 未在 Samsung Moment 上触发
我的应用程序中有一个列表。
当用户用手指触摸列表项时, onListItemClick 处理程序会触发,我让它打开一个新的 Activity。
但是,当用户使用轨迹球/板单击时,我想执行一些不同的功能。我已经覆盖了 onTrackballEvent,并且在模拟器的轨迹球模式下一切都工作得很好。
不幸的是,在 Samsung Moment 上进行测试时,单击触控板会触发 onListItemClick 处理程序,而不是 onTrackballEvent 处理程序。
有谁知道为什么?有人有办法解决这个问题吗?
I have a list in my app.
When a user touches a list item with their finger, the onListItemClick handler fires and I have it opening a new Activity.
However, when a user uses the trackball/pad to click, I want to perform some different functionality. I've overrode onTrackballEvent and everything works perfectly fine in the emulator's trackball mode.
Unfortunately, when testing on the Samsung Moment, clicking the trackpad fires the onListItemClick handler, not the onTrackballEvent handler.
Does anyone know why? Does anyone have a way around this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在列表视图中,您可以 setOnKeyListener 并在键码为 KeyEvent.KEYCODE_DPAD_CENTER 时进行编码,
这对我有用。希望这会给你一些想法
In listview you can setOnKeyListener and do you code when keycode is KeyEvent.KEYCODE_DPAD_CENTER
It work for me. Hope this will give you some idea
尝试覆盖
dispatchTrackball
事件并获取这些事件。另外,只是一个建议 - 我不会在轨迹球上使用不同的操作,因为并非所有 Android 手机都有轨迹球。Try overriding the
dispatchTrackball
event and grab those events. Also, just a suggestion - I would not use a different action on the trackball because not all Android phones have the trackball.