2011-11-16 8 views
13

Czy można utworzyć przejście scenorysu z kontrolera widoku do samego siebie? Mam kilka Entities, które mają podobne podmioty. Chciałbym móc wyświetlić powiązaną jednostkę za pomocą tego samego kontrolera widoku, który wyświetla obiekt. Ale nie mogę utworzyć przejścia, które wyświetli nowe wystąpienie kontrolera widoku początkowego.Jak utworzyć przejście storyboardu z kontrolera widoku do niego samego?

Czy to nie jest dozwolone? Dzięki!

Odpowiedz

22

Tu jest rozwiązanie, które nie jest takie samo, ale zapewnia mi to, czego chcę. Znalazłem to jako odpowiedź na this question.

Powodem, dla którego myślałem, że muszę użyć ruchu, a nie starego, dobrego, programowego popychania kontrolera widoku na stos kontrolera nawigacyjnego, jest to, że skonfigurowałem IBOutlet kontrolera widoku w scenorysie. Nie zdawałem sobie sprawy, że można utworzyć kopię kontrolera widoku, tak jak to opisano w scenorysie bez korzystania ze scenorysu. Możesz! Aby zobaczyć, jak to zrobić, sprawdź inne pytanie i zagłosuj na niego!

+4

Dałem wam dwa ups, ponieważ, nawet jeśli nikt nie odpowiedział, znaleźliście rozwiązanie i staraliście się je opublikować, aby pomóc innym. To jest duch!! – Daniel

3

Można przeciągnąć z wciśniętym klawiszem Ctrl (lub przeciągnąć prawym przyciskiem myszy) z elementu (UIButton itp.) Do kontrolera zawierającego tekst.

(? Próbowałeś to robię to teraz, mam jeden stock UIViewController że po prostu utrzymuje dodając się w nieskończoność do zawierającym UINavigationController stosie za pomocą normalnego push segue.)

+0

Jest to dobre, ale nie można przeciągać z kontrolki ViewController do siebie w przypadku, gdy chcesz, aby programista mógł wywoływać programowo. –

+1

Powinieneś być w stanie nadać nazwę segue (polu "Identyfikator" w inspektorze atrybutów) w edytorze scenorysów i odwołać go za pomocą '-performSegueWithIdentifier: sender:' na twoim 'UIViewController' w kodzie. –

1

Tak, to jest denerwujące I nie może zrobić "ręcznego" oddzielenia się od siebie.

Po dodaniu UIButton do mojego widoku, wykonałem akcję push do tego samego kontrolera widoku, a następnie ten przycisk został ukryty. Wtedy mogę nazwać segue i wskazać go w kodzie.

Hacky, ale działa.

+0

Rzeczywiście, hacky, ale nie widzę innego rozwiązania, ponieważ mam niestandardowy segue. Przyjęta (polecana) odpowiedź używa domyślnej animacji wypychania, która nie jest tym, czego chcę. Czuję się teraz brudna, zrobiłem to: x +1. – ar34z