Cómo crear instancias y cargar un controlador de vista antes de pasar a él usando swift

Tengo un problema cuando paso de viewController A a viewController B, en el que tiene aproximadamente un retraso de 5 segundos antes de pasar a él. Creo que se debe a la cantidad de vistas que estoy cargando en viewDidLoad.

Tengo un archivo xib que tiene una vista de pila de 11 secciones que representan niveles. Cada sección tiene un botón y algunas imágenes que pueden cambiar según el progreso de los usuarios.

Además, instanciaré 10 de estas vistas xib para cargarlas en una vista de desplazamiento. Todo esto sucede en viewDidLoad.


Me pregunto si puedo cargar viewController B y tenerlo todo listo antes de hacer clic en el botón que está a su lado; con suerte arreglando el retraso que recibo. También estoy usando segues personalizados hacia y desde los controladores.

Cualquier ayuda que pueda obtener es apreciada. Lo he investigado yo mismo, pero la mayoría de los temas que encuentro están desactualizados o no se aplican. Gracias de nuevo por cualquier puntero.

ACTUALIZACIÓN: la respuesta responde una parte de mi pregunta sobre cómo preparar un controlador de vista para fines de eficiencia, no responde la parte de retraso, pero creo que lo descubrí si lees los comentarios a continuación.

Respuestas a la pregunta(1)

Su respuesta a la pregunta