¿Cómo creo un archivo de controlador de vista después de crear un nuevo controlador de vista?

81

Estoy desarrollando una aplicación con pestañas.

Cuando creo un nuevo controlador de vista y lo vinculo al controlador de la barra de pestañas, a diferencia de los otros dos controladores de vista predeterminados, este no tiene viewcontroller.swiftarchivo.

¿Cómo puedo crear este archivo?

Estoy usando Xcode 6 y estoy desarrollando la aplicación en Swift.

Kian Cross
fuente

Respuestas:

134

Correcto, cuando arrastra un objeto de controlador de vista a su guión gráfico para crear una nueva escena, no crea automáticamente la nueva clase para usted también.

Después de haber agregado una nueva escena del controlador de vista a su guión gráfico, debe:

  1. Crea una UIViewControllersubclase. Por ejemplo, vaya a la carpeta de su destino en el panel de navegación del proyecto a la izquierda y luego controlhaga clic y elija "Nuevo archivo ...". Elija una "Clase Cocoa Touch":

    Clase Cocoa Touch

    Y luego seleccione un nombre único para la nueva subclase del controlador de vista:

    Subclase UIViewController

  2. Especifique esta nueva subclase como la clase base para la escena que acaba de agregar al guión gráfico.

    ingrese la descripción de la imagen aquí

  3. Ahora conecte cualquier referencia IBOutlety IBActionpara esta nueva escena con la nueva subclase del controlador de vista.

Robar
fuente
¿También puedes crear solo un .swiftarchivo? Dado que su ViewController.swiftserá el archivo para usar en Swift.
Azurespot
4
Gracias, quise decir que podríamos elegir un Swiftarchivo de la ventana emergente en lugar del Cocoa Touch Class, ¿correcto?
Azurespot
9
Claro, pero esto hace lo mismo y agrega las importdeclaraciones necesarias y establece la clase base y le brinda la plantilla para algunos métodos. No estoy seguro de por qué querría hacerlo manualmente, pero ciertamente puede hacerlo si lo desea.
Rob
Si es valiente, puede omitir el Paso 1 y, en el Paso 2, puede configurar la Clase personalizada en una de sus clases de controlador de vista existentes y hacer que esa clase de controlador de vista maneje las acciones y salidas para ambos (o como sea muchas) escenas que configuró en ese VC. Tenga en cuenta que esto tiene muchas trampas (comenzando con el hecho de que debe verificar si una salida es nula antes de usarla), y es probable que introduzca muchos errores si lo intenta para un proyecto grande, pero es una truco útil para aplicaciones pequeñas / de juguete / de ejemplo.
Jemenake
Jajaja Si ve una luz al final del túnel, asegúrese de que no sea otro tren que se dirige directamente hacia usted a alta velocidad. Técnicamente tienes razón, por supuesto, pero Dios mío, solo estás suplicando problemas, dolores de cabeza por mantenimiento de código, etc.
Rob
-2

Para agregar uno nuevo ViewControlleruna vez que tenga uno existente ViewController, siga el paso a continuación:

  1. Haga clic en el fondo de Main.storyboard.

  2. Busque y seleccione ViewControllerde la biblioteca de objetos en la ventana de la utilidad.

  3. Arrástrelo y suéltelo en segundo plano para crear uno nuevo ViewController.

Manan Jain
fuente