¿Cómo cargar contenido a las pestañas de JavaFX dinámicamente?

Tengo una GUI, hecha utilizando JavaFX con FXML.

Esta GUI tiene muchos componentes y no todos son necesarios en un momento dado.

Por ejemplo, imagine una GUI que recibe de su parte del servidor una lista de ciudades. Cada ciudad se describe en su propia pestaña (y se describe con muchos nodos). El conjunto de ciudades contiene 30 elementos.

Cuando se inicia la GUI, solicita al servidor una lista de las ciudades. El servidor devuelve un "subconjunto" aleatorio de ciudades (puede ser Moscú + Riga + Nueva York o San Petersburgo + Tokio, o solo Ámsterdam, o las 30 ciudades en un solo grupo).

Asi que. No tengo necesidad de tener las 30 pestañas en mi árbol de nodos (supongo que simplemente "comen" memoria y nada más).

Quiero administrar la cantidad de pestañas que tengo en cada momento en mi GUI.

La primera solución simple que tengo es la siguiente:

Cree un archivo FXML que contenga los componentes para todas las ciudadesDurante la inicialización en la clase de controlador, elimine las pestañas, que no son necesarias.

Hay problemas que tengo con esta solución. Primero, no sé sitabPane.getTabs().remove(index) realmente elimina la pestaña y todo su contenido del árbol de nodos. En segundo lugar, todas las pestañas innecesarias se inicializarán antes de que se eliminen, por lo que usarán la memoria y los recursos de todos modos, y mi GUI puede ser más lenta de lo que debe ser.

La segunda solución que tengo es:

Hacer un montón de FXMLs. Una para todas las ciudades, una para cada ciudad y una para cada combinación de ciudades.

Pero habrá muchos FXML, por lo que esta solución tampoco es útil.

La solución que sueño para:

Cree un archivo FXML para cada ciudad y uno para la aplicación principal con pestañas.Cargue el contenido del archivo de ciudad FXML en una pestaña dinámicamente cuando sea necesario.

Entonces, si alguien tiene alguna idea sobre esta tarea, o conoce la solución, ayúdeme con eso ...

Respuestas a la pregunta(1)

Su respuesta a la pregunta