我有一个VerticalFieldManager的自定义扩展,它会自动滚动自身以向用户显示数据。在该VFM之上和之下,用户可以与其他组件进行交互。在OS5上,它可以完美运行,而且完全符合我的期望。在OS6上,通过内置的“平滑滚动”功能,当用户尝试从VFM上方的字段滚动到下方字段时,在将焦点转移到VFM下方的字段之前,VFM由用户输入滚动。

是否有任何方法可以覆盖此行为,并告诉操作系统让我的VFM不理会?在OS5中,这很简单,因为它使VFM无法聚焦。

我试过摆弄VFM上的垂直调整和垂直量化,但是没有运气。 VFM从未真正获得焦点,OS只是对其进行滚动。我认为操作系统认为它有所帮助,但没有帮助! :)

最佳答案

您可以在父管理器中与nextFocus()混淆,以跳过中间的VFM。也许还覆盖onFocus()作为中间内容,只是转到下一个。我知道它应该通过将其设置为非焦点来做到这一点,但是可能重写isFocusable()以返回false。

关于blackberry - 如何在OS 6中覆盖默认滚动行为,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7027859/

10-11 07:01