java - 如何使用 javafx 在 Gluon 移动应用程序中切换 View ?

标签 java android javafx gluon-mobile

我正在尝试使用 javafx 创建 Gluon 移动应用程序。我想创建一个登录页面,在其中成功登录后,我需要单击按钮加载另一个(第二 View ) View 。我没有得到一个合适的例子。如果有人知道这一点,请提供帮助。我有两个 View 主要演示者和次要演示者。(带 FXML 的 gluon 应用程序)。下面是我的主要 View 的 Controller 。

public class PrimaryPresenter {

@FXML
private View primary;

private Label label;
@FXML
private TextField username;
@FXML
private Button loginBt;

private Alert alert;
@FXML
private PasswordField password;
public void initialize() {
    primary.showingProperty().addListener((obs, oldValue, newValue) -> {
        if (newValue) {
            AppBar appBar = MobileApplication.getInstance().getAppBar();
            appBar.setNavIcon(MaterialDesignIcon.MENU.button(e
                    -> MobileApplication.getInstance().showLayer(ArjunsApp.MENU_LAYER)));
            appBar.setTitleText("Primary");
            appBar.getActionItems().add(MaterialDesignIcon.SEARCH.button(e
                    -> System.out.println("Search")));
        }
    });
}

@FXML
private void buttonClick(ActionEvent event) {
    if(username.getText().equals("")){
        alert = new Alert(AlertType.ERROR,"Enter username");
        alert.showAndWait();
    }else if(password.getText().equals("")){
        alert = new Alert(AlertType.ERROR,"Enter password");
        alert.showAndWait();
    }else{
        //Code to load my secondary view
    }
}

最佳答案

假设您正在使用 Gluon 插件 - 带有 FXML 模板的多 View 项目,您可以使用 MobileApplication.getInstance().switchView(viewName) 轻松切换 View 。

在你的情况下:

@FXML
private void buttonClick(ActionEvent event) {
    ...
    MobileApplication.getInstance().switchView("SECONDARY_VIEW");
}

如果您使用的是 Glisten-Afterburner 模板(它也使用 FXML),您可以使用如下内容:

@FXML
private void buttonClick(ActionEvent event) {
    ...
    AppViewManager.SECONDARY_VIEW.switchView();
}

您可以找到有关 Gluon Mobile API 的更多信息 here .

关于java - 如何使用 javafx 在 Gluon 移动应用程序中切换 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46766717/

相关文章:

android - 如何将我当前位置的 map 绘制到特定的纬度经度值

android - 我们如何获得进度条/搜索栏的结束位置?

java - 如何将操作监听器添加到议程中的约会(JFXtras 议程)

Java : Comparable vs Comparator

java - Java如何通过读取URL判断图片是否存在?

java - 如何将 HTTP 请求发送到在 docker 容器中运行的服务器?

java - 如何在 JSP、Java servlet 中显示当前登录的用户

android - 使用 Dagger 2 将上下文或 Activity 传递给适配器

java - 使用JavaFX播放音频"java.lang.IllegalArgumentException: uri.getScheme() == null! "错误

java - JFoenix JFXTreeTableView 列标题对齐