Porównaj ceny domen i usług IT, sprzedawców z całego świata

Zrozumienie performSegueWithIdentifier


Czy ktoś z większą wiedzą ode mnie może wyjaśnić mi
performSegueWithIdentifier: sender:
? Muszę przełączyć widoki (i klasy), a także przenieść wiele NSStringów i identyfikatorów do klasy tego widoku. Zastanawiałem się, czy jest to możliwe z
performSegueWithIdentifier: sender:
Podziękować!
Zaproszony:
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Najpierw musisz ustawić segue w swoim storyboardzie

i nadaj mu odpowiedni identyfikator
... (Kliknij przejście (lewy panel), a następnie atrybuty (prawy panel).
Następnie możesz powiązać to z przyciskami lub zaznaczeniami wierszy tabeli ze swojego storyboardu lub możesz wywołać je w kodzie za pomocą
performSegueWithIdentifier: sender:
.
Spowoduje to wysłanie wiadomości
readyForSegue: sender:
do kontrolera widoku. Możesz zastąpić tę metodę w podklasie kontrolera widoku i dostosować docelowy kontroler widoku w następujący sposób:
TargetViewController *targetVC = (TargetViewController*)segue.destinationViewController;
targetVC.string1 = string1;

I tak dalej.
sender
w tej metodzie będzie obiektem, którego użyjesz jako
sender
w pierwotnym wywołaniu metody.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Większość segmentów jest inicjowana automatycznie w wyniku interakcji użytkownika. Na przykład, jeśli masz ścieżkę połączoną z przycisku do sceny w serii ujęć, to po naciśnięciu przycisku ścieżka jest automatycznie inicjowana.
Czasami ma sens programowe wywoływanie płynności - na przykład masz scenę z wysokim wynikiem, która jest wyświetlana, gdy użytkownik wygrywa rundę gry. Nie ma sposobu, aby wyrazić koncepcję zwycięstwa w samym scenariuszu, więc możesz zamiast tego utworzyć segue, przypisać do niego identyfikator i wywołać
-performSegueWithIdentifier: sender:
w czasie wykonywania.
Inną metodą związaną z segue w UIViewController,
-prepareForSegue: sender:
, jest metoda, którą należy przesłonić, aby wykonać dowolne dostosowanie na docelowym kontrolerze widoku.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

W
PrzygotowanieForSegue: sender:
masz możliwość dostosowania
destinationViewController
: tutaj przekazujesz do niego niezbędne dane. Jest to omówione w

Kompetencje stosowane w kakao dla systemu iOS
https://developer.apple.com/li ... .html
.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Dzisiaj natknąłem się na problem performSegueWithIdentifier: niewykonany, ponieważ nie skonfigurowałem kolejki delegatów na moim adresie URL sesji.
Tak więc, przypadkowo, sprawdź, czy faktycznie ustawiasz kolejkę delegatów podczas tworzenia sesji URLSession, w przeciwnym razie sesja URL utworzy własną.
urlSession = [NSURLSession sessionWithConfiguration:sessionConfigObject
delegate:self
delegateQueue:[NSOperationQueue mainQueue]];

Wspominam o tym tutaj, ponieważ dość często widzę, że przetwarzanie sesji URL kończy się wywołaniem jakiejś akcji związanej z interfejsem użytkownika. I performSegue musi być zrobione na main, w przeciwnym razie nic nie da.

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się