我创建了一个“使用FXML的Gluon Mobile多视图”项目。附上结构和错误的图片。 我有这些问题: 1- i构建android但android部分中的类不构建。 2-场景建设者不要打开fxml因为:
com.gluonhq.charm.glisten.mvc.View
<?xml version="1.0" encoding="UTF-8"?>
<?import com.gluonhq.charm.glisten.control.Icon?>
<?import com.gluonhq.charm.glisten.mvc.View?>
<?import java.lang.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.layout.BorderPane?>
<?import javafx.scene.layout.VBox?>
<?import javafx.scene.layout.*?>
<View fx:id="primary" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="600.0" prefWidth="350.0" stylesheets="@primary.css" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.gluonapplication1.views.PrimaryPresenter">
<center>
<VBox alignment="CENTER" prefHeight="200.0" prefWidth="100.0" spacing="15.0" BorderPane.alignment="CENTER">
<children>
<TextArea fx:id="txtArea" text="txt area text"/>
<Label fx:id="label" text="Hello JavaFX World!" />
<Button mnemonicParsing="false" onAction="#buttonClick" text="Change the World!">
<graphic>
<Icon content="LANGUAGE" />
</graphic>
</Button>
</children>
</VBox>
</center>
</View>
答案 0 :(得分:2)
关于第一个问题,Android类在NetBeans上失败,问题是由于两个Gradle插件发生冲突:Gradle支持和NBAndroid。
Gluon / JavaFXPorts使用NetBeans的Gradle插件,所以这是必须的。例如,NBAndroid插件可以用于日志记录,但是这两个插件并不能很好地协同工作,解决方案就是禁用NBAndroid。
请注意,NBAndroid插件将在NetBeans-&gt;工具 - &gt;插件,已安装:Android和Android Gradle支持下。停用或卸载两者。
重启NetBeans并解决Android错误。
关于FXML问题:带有Gluon控件的FXML(View
),无法在Scene Builder上加载。
这里有两个问题:
安装Charm.jar
发布here后,使用Jar管理器可以在存储库中找到charm
并安装自定义组件后进行搜索。目前,com.gluonhq:charm:4.0.1
将得到解决。
如果控制列表为空,请尝试搜索charm-glisten
,然后安装com.gluonhq:charm-glisten:4.0.1
。这种依赖关系应该由charm.pom
解决,但似乎可能会失败。
第二个问题,一旦安装了charm控件,就与从IDE打开fxml文件有关:Scene Builder找不到Charm控件,加载失败。
这是一个已知问题,它将在下一个版本中修复,所以现在有两个选项:
启动Scene Builder,转到Open...
或Open recent
并打开FXML。
编辑SceneBuilder.cfg文件(位于C:\Users\<user>\AppData\Local\SceneBuilder\app\SceneBuilder.cfg
下),并将已安装的自定义jar的路径添加到类路径变量app.classpath=
。