Tengo un xib archivo que he creado un pop up con el controlador en un UIView. Este pop-up controlador anima cuando se pulsa una tecla en un Controlador de Vista 1. Tengo un botón en el UIView que cuando se presiona quiero presentar otro punto de Vista Controlador (Controlador de Vista 2). código parece:

class PopUpViewControllerSwift : UIViewController {

  @IBAction func goToVC2(sender: UIButton) {

        self.removeAnimate()

        let VC2: VC2 = self.storyboard?.instantiateViewControllerWithIdentifier("VC2") as VC2
        var modalStyle: UIModalTransitionStyle = UIModalTransitionStyle.CoverVertical
        VC2.modalTransitionStyle = modalStyle
        presentViewController(VC2, animated: true, completion: nil)

    }
}

Aunque tú cuando se pulsa el botón se bloquea, no hay ningún error o devoluciones de llamada ni nada. Obviamente, esto normalmente funciona si era simplemente un Controlador de Vista, sino porque me estoy haciendo dentro de una ventana de Vista que se ha animado en la parte superior de otro punto de Vista, creo que es el problema?

¿Alguien puede ayudar?

gracias

OriginalEl autor Henry Brown | 2015-03-08

2 Comentarios

  1. 9

    Hice esto en un UICollectionView didSelectItemAtIndexPath método.

    //Register Nib
    let newViewController = NewViewController(nibName: "NewViewController", bundle: nil)
    
    //Present View "Modally"
    self.presentViewController(newViewController, animated: true, completion: nil)

    Me puse el ID de la ViewController a la misma como el nombre de archivo por lo que estaría seguro para hacer referencia al derecho ViewController.

    en swift 4 uso : auto.presente()

    OriginalEl autor Michael

  2. 0

    Asegúrese de self.storyboard no es nil.

    También confirmar que VC2 es uno de los ViewController de la identidad en el archivo de guión gráfico.

    Espero que te podría ayudar.


    si VC2 es en un archivo de guión gráfico, pruebe a utilizar el siguiente comando para obtener VC2

    let storyboard = UIStoryboard(name: "YourStoryboardName(maybe 'Main')", bundle: nil)
    let vc2 = storyboard.instantiateViewControllerWithIdentifier("VC2") as VC2

    o si VC2 está en una punta de archivo, intente utilizar el siguiente comando para obtener VC2

    let vc2 = VC2(nibName: "YourNibName", bundle: nil)

    Si la VC que se presenta proviene de una XIB, a continuación, que no tienen un guión…
    auto.guión está volviendo como nil? ¿Por qué es eso y cómo puedo vencer? gracias por la buena respuesta por el camino.

    OriginalEl autor kilnyy

Dejar respuesta

Please enter your comment!
Please enter your name here