Codenameone 向按钮子代引入重复操作的最佳方法

Codenameone 向按钮子代引入重复操作的最佳方法,codenameone,Codenameone,我想从Button派生一个类来添加一个初始延迟和间隔,只要按下按钮进行重复操作,就可以使用它 乍一看,这似乎很简单,但方法com.codename1.ui.Button.setState(int)无法重写,因为它只有包访问权限。这是一个很好的理由吗 我注意到,按钮调用在pointerReleased上执行的操作。我的按钮子代应该反复调用actionPerformed,但在滚动按钮的父容器时不应调用actionPerformed。这可能只是对应于按钮状态_按下,对吗?如果我正确理解了你的意思,那么

我想从Button派生一个类来添加一个初始延迟和间隔,只要按下按钮进行重复操作,就可以使用它

乍一看,这似乎很简单,但方法
com.codename1.ui.Button.setState(int)
无法重写,因为它只有包访问权限。这是一个很好的理由吗


我注意到,按钮调用在pointerReleased上执行的操作。我的按钮子代应该反复调用actionPerformed,但在滚动按钮的父容器时不应调用actionPerformed。这可能只是对应于按钮状态_按下,对吗?

如果我正确理解了你的意思,那么我只需在
按下的
方法上启动一个计时器,然后在计时器过期时重复调用
超级按下的
超级释放的

我不明白你想创建什么样的UI?您正在尝试创建切换按钮吗?
setState
方法是内部的,因为它的状态用于非触摸设备中的UI交互,例如,在触摸设备中没有意义的滚动。我试图做的是——我通过覆盖getX()并使用getState()和计时器来做——在按住按钮的同时重复操作。我不同意-按下的状态也用于触摸设备对不起,我的意思是“它的一些状态是…”我想要一些按钮像pc键盘上的键一样。为此,我需要知道何时按下按钮子体。然后我创建了一个计时器,它具有给定的初始延迟和触发按钮操作的给定间隔。当按钮被释放时,我取消了计时器。是的,那更清楚了。这就是我的回答。