2011-11-16 1638 views
13

¿Es posible crear una transición de guión gráfico desde un controlador de vista a sí mismo? Tengo un grupo de Entidades que tienen Entidades Relacionadas. Me gustaría poder mostrar una entidad relacionada utilizando el mismo controlador de vista que muestra la entidad. Pero parece que no puedo crear un segue que muestre una nueva instancia del controlador de vista de origen.¿Cómo puedo crear el guion gráfico desde un controlador de vista a sí mismo?

¿No está permitido? ¡Gracias!

Respuesta

22

Bueno, aquí hay una solución que no es exactamente igual pero que me da lo que quiero. Lo encontré como una respuesta al this question.

La razón por la que pensé que tenía que usar un segue en lugar de la buena y antigua aplicación programática de un controlador de vista en la pila del controlador de navegación es que había configurado los IBOutlets del controlador de vista en el guión gráfico. No me di cuenta de que podía crear una copia del controlador de vista tal como se presenta en el guión gráfico sin usar un guion gráfico. ¡Usted puede! Para ver cómo hacerlo, revisa esa otra pregunta y ¡vota al respondedor!

+4

Te dí dos ups porque, aunque nadie le respondió, encuentras la solución y te preocupas de publicarla para ayudar a los demás. ¡¡Ese es el espíritu!! – Daniel

3

Puede presionar ctrl-click-drag (o hacer clic derecho-arrastrar) desde un elemento (UIButton, etc.) al controlador de vista contenedor.

(? ¿Has intentado esto que estoy haciendo ahora mismo, tengo una acción UIViewController que sólo sigue añadiendo indefinidamente a la UINavigationController pila que contiene a través de un push segue normal.)

+0

Esto es bueno, pero no se puede arrastrar desde el ViewController a sí mismo en el caso de que desee un segue puede llamar mediante programación. –

+1

Aún debería poder nombrar el segue (el campo 'Identificador' en el inspector de atributos) en el editor del guión gráfico y hacer referencia a él a través de' -performSegueWithIdentifier: sender: 'en su' UIViewController' en el código. –

1

Sí, es molesto yo no puede hacer un cambio 'manual' a sí mismo.

Lo que hice se agregó un UIButton a mi vista y le di una acción de empujar al mismo controlador de vista, y luego hice este botón oculto. Entonces puedo nombrar el segue y hacer referencia a él en el código.

Hacky, pero funciona.

+0

De hecho, hacky, pero no veo otra solución ya que tengo una segue personalizada. La respuesta aceptada (referida) usa la animación de inserción predeterminada, que no es lo que quiero. Me siento sucio ahora que he hecho esto: x +1 no obstante. – ar34z

Cuestiones relacionadas