【问题标题】:Trouble with "How to Create Bottom Navigation" Gluon (createButton)“如何创建底部导航”胶子(createButton)的问题
【发布时间】:2021-04-18 21:52:10
【问题描述】:

我正在尝试向我的 Gluon Mobile 应用程序添加底部导航,所以我环顾四周,发现了这个:How to create Bottom Navigation。我试图在我的代码中实现这一点,但它不起作用,所以我将它转移到一个空的单视图项目中。在那里,我能够对包进行一些故障排除和导入后识别出具体的错误。如下(带两个星号的代码是产生错误的代码,下面是错误):

BottomNavigationButton btn1 = bottomNavigation.**createButton**("View1", MaterialDesignIcon.DASHBOARD.graphic(), e -> showView("view1"));
BottomNavigationButton btn2 = bottomNavigation.**createButton**("View2", MaterialDesignIcon.AC_UNIT.graphic(), e -> showView("view2"));
BottomNavigationButton btn3 = bottomNavigation.**createButton**("View3", MaterialDesignIcon.MAP.graphic(), e -> showView("view3"));

每一行的错误: 找不到标志 符号:方法 createButton(String,Node,(e)->showV[...]ew2")) 位置:BottomNavigation类型的变量bottomNavigation

这是完整的代码:

package com.myfirstapplication;

import com.gluonhq.charm.glisten.application.MobileApplication;
import com.gluonhq.charm.glisten.control.AppBar;
import com.gluonhq.charm.glisten.control.BottomNavigation;
import com.gluonhq.charm.glisten.mvc.View;
import com.gluonhq.charm.glisten.visual.MaterialDesignIcon;
import com.gluonhq.charm.glisten.visual.Swatch;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.ToggleButton;
import javafx.scene.image.Image;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

public class MyFirstApplication extends MobileApplication {

@Override
public void init() {

    addViewFactory(HOME_VIEW, () ->
    {

        StackPane root = new StackPane();
        root.getChildren().add(new Label("test"));

        View view = new View(root) {

            @Override
            protected void updateAppBar(AppBar appBar) {
                appBar.setTitleText("Home");
            }

        };
        view.setBottom(createBottomNavigation());
        return view;
    });

}

private BottomNavigation createBottomNavigation() {
    BottomNavigation bottomNavigation = new BottomNavigation();

    BottomNavigationButton btn1 = bottomNavigation.createButton("View1", MaterialDesignIcon.DASHBOARD.graphic(), e -> showView("view1"));
BottomNavigationButton btn2 = bottomNavigation.createButton("View2", MaterialDesignIcon.AC_UNIT.graphic(), e -> showView("view2"));
BottomNavigationButton btn3 = bottomNavigation.createButton("View3", MaterialDesignIcon.MAP.graphic(), e -> showView("view3"));


    bottomNavigation.getActionItems().addAll(btn1, btn2, btn3);

    return bottomNavigation;
}

private void showView(String viewName) {
    MobileApplication.getInstance().switchView(viewName);
}
}

【问题讨论】:

    标签: java javafx gluon gluon-mobile


    【解决方案1】:

    您应该始终首先查看 JavaDoc。查看CreateButton method 的文档。 此方法已被弃用,随后被删除。折旧消息准确地描述了您必须使用的东西。

    重申一下,在查看文档之前不要开始在互联网上搜索答案。最好的起点是https://docs.gluonhq.com/ 用于 Glisten 框架(移动 UI)的最新 JavaDoc 位于 https://docs.gluonhq.com/charm/javadoc/6.0.6/com.gluonhq.charm.glisten/module-summary.html

    【讨论】:

    • 好的,我很抱歉。但是,我仍然不确定如何使用这些按钮。我确实阅读了 BottomNavigationButton 的文档并尝试编写一个示例,但我不习惯使用 JavaDocs,所以我有点困惑。它还说我需要使用 toggleButton ,我不确定该怎么做。如果有可以分享的例子,我将不胜感激。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-10
    • 2023-03-03
    • 2020-06-18
    • 2022-07-11
    相关资源
    最近更新 更多