Звучит как хорошая идея, но это не решает мою проблему.
Что это значит? В чем именно заключается проблема?
public class Parent {
public static class Child {
@FXML
private Label label;
@FXML
private void initialize() {
System.out.println("initialize " + getClass().getName());
System.out.println("label = " + label);
}
}
}
<AnchorPane xmlns="http://javafx.com/javafx"
xmlns:fx="http://javafx.com/fxml"
fx:controller="sample.Parent$Child">
<Label fx:id="label" text="Test"/>
</AnchorPane>
public class Sample extends Application {
public void start(Stage stage) throws Exception {
FXMLLoader loader = new FXMLLoader();
loader.setLocation(getClass().getResource("/sample/test.fxml"));
Parent root = loader.load();
Scene scene = new Scene(root, 400, 200);
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
При запуске приведенного выше примера контроллер успешно инициализируется:
initialize sample.Parent$Child
label = Label[id=label, styleClass=label]'Test'