Lo que estoy tratando de hacer es hacer clic en un botón (que se creó en el código) y hacer que llame a un controlador de vista diferente y luego ejecutar una función en el nuevo controlador de vista.
Sé que podría hacerse con relativa facilidad en IB, pero esa no es una opción.
Un ejemplo de lo que quiero hacer sería si tuviera dos controladores de vista, uno con una pantalla de inicio de la casa. El otro controlador de vista tenía un recorrido por la casa en el que podía pasar por todas las habitaciones en un orden establecido. La pantalla de bienvenida tendría botones para cada habitación que te permitirían saltar a cualquier punto del recorrido.