libGDX反向actor eventHandling

时间:2016-01-13 08:08:42

标签: java libgdx event-handling scene2d

我正在尝试在libGDX中创建一个通用选项卡小部件。它包含一个按钮栏,一个窗格栏和一个窗格视图。

让我们假设tabwidget和屏幕一样大,我们有3个标签。按钮栏占据屏幕的顶部,窗格位于底部。 paneView是一个用于事件处理的WidgetGroup,它与tabwidget一样大,减去buttonBar。

tabwidget

在我添加一个滚动窗格作为标签窗口小部件之前,一切正常。由于此scrollPane调用:

event.stop();

不会调用后续事件。

由于事件通过演员“冒泡”,最低级别的演员首先要处理其父母和兄弟姐妹的事件处理程序。这意味着滚动窗格总是在tabwidget之前处理。

有没有办法交错输入监听器的顺序?首先处理标签输入然后再处理滚动窗格输入?或者我是否必须重新实现滚动窗口处理程序以解决此问题?

1 个答案:

答案 0 :(得分:1)

我认为你想要实现它的方式是不可能的 - 演员如何知道你正在执行的 fling gesture 是针对哪个?

我想到的决议是

在我看来,修改libgdx源通常不是一个好主意,但当然你可以这样做(通过从Github下载LibGDX并将其作为项目导入,你可以访问所有来源),尽管在这种情况下它绝对没有必要