Parent root = loader.load(); wird in deinem Beispiel 2-mal aufgerufen, das würde nicht gehen. Deswegen habe ich die Variable umbenannt, aber dann wird ja die zweite View geladen und die MainView sieht man nicht.
Wenn ich mir so was, so was, oder so was anschaue, dann führt mich das immer wieder dahin zurück, dass ich den OtherController anscheinend im MainController deklarieren soll und in der initialize()-Methode rufe ich dann etwas aus dem OtherController auf. Ich weiß gar nicht mehr richtig, wie ich das über Text beschreiben soll. Egal was ich mache, ich bekomme immer diese NullPointerException.
Außerdem verstehe ich diese Beispiele nicht, denn:
Wenn ich die View und den Controller aufteilen soll, damit es übersichtlicher wird, warum soll ich dann etwas in den MainController schreiben, was eigentlich den OtherController betrifft (z. B. das Aufrufen von Methoden, die im OtherController liegen)?
Laut Anleitungen soll ich einfach nur die OtherView.fxml in der Main.fxml inkludieren und dann läuft der Hase. Außerdem schreibt jeder etwas anderes.
Ich sitze zwar locker schon über 20 Stunden an diesem Problem, aber ich mache solange weiter, bis ich es hinbekomme.
Wie ich das jetzt verstanden habe, müssen die Controller sich untereinander kennen. Ich brauche am besten eine Anleitung von 0-100.