如何禁用某些表单的后退按钮

时间:2016-03-30 13:04:38

标签: forms navigation codenameone

我想禁用"返回"按钮在特定表单上,但以其他形式(视图)继续工作。

4 个答案:

答案 0 :(得分:2)

你应该覆盖statemachine上的allowBackTo,默认情况下这个方法应该返回true,这样你就可以继续回到其他形式但是对那些你不想允许返回的表单返回false,例如,如果你想要继续回到你所有的表格,除了一个名为“SplashScreen”的表格,你应该做以下事情:

 @Override
    protected boolean allowBackTo(String formName){
        if ("SplashScreen".equals(formName)){
              return false;
            }
            return true;

    }

答案 1 :(得分:1)

在特定表格中,您可以在表格内使用:

removeCommand(getBackCommand());

答案 2 :(得分:0)

另一种方法是在实现函数接口 CommandActionPerformed 方法的 ActionListener 中添加条件。

如果满足条件,则执行代码。此外,您可以使用 elseelse if 块通过 animateLayout 调用提供用户反馈。

但是,我们需要非常小心地使用这种方法,因为我们不想在 ActionPerformed 中放置太多逻辑,因为它会减慢执行速度,降低性能。

答案 3 :(得分:-1)

不要担心。只需将id或类插入需要禁用按钮的相关表单即可。并使用该类或id来禁用该按钮。

例如:按下#myid按钮'作为选择器