Jaka jest różnica między wszystkimi segmentami wyboru?

300
  • Pokazać
  • Pokaż szczegół
  • Przedstaw modalnie
  • Prezentacja popover
  • Zwyczaj

wprowadź opis zdjęcia tutaj

Jaka jest różnica między nimi? Nie mogłem znaleźć żadnej dokumentacji na ten temat. Były takie, które znalazłem w wyszukiwarce Google, ale już ich nie ma: https://developer.apple.com/library/ios/recipes/xcode_help-interface_builder/articles-storyboard/StoryboardSegue.html

Użytkownik
źródło
segue Link dokumentacja jest help.apple.com/xcode/mac/8.0/#/dev564169bb1
Cœur

Odpowiedzi:

535

Oto krótkie podsumowanie sekwencji i przykład dla każdego typu.

Pokaż - przesuwa docelowy kontroler widoku na stos nawigacji, przesuwając go od prawej do lewej strony, zapewniając przycisk powrotu, aby powrócić do źródła - lub jeśli nie jest osadzony w kontrolerze nawigacji, zostanie przedstawiony modalnie
Przykład: Nawigacja w skrzynkach odbiorczych / folderach w poczcie

Pokaż szczegóły - do użytku w kontrolerze podzielonego widoku, zastępuje kontroler widoku szczegółowego / pomocniczego w rozszerzonym interfejsie 2-kolumnowym, w przeciwnym razie po zwinięciu do 1 kolumny popchnie kontroler nawigacyjny
Przykład: W Wiadomościach stuknięcie rozmowy spowoduje wyświetlenie szczegóły konwersacji - zastąpienie kontrolera widoku po prawej stronie w układzie dwóch kolumn lub przesuwanie konwersacji w układzie jednej kolumny

Prezentuj modalnie - Prezentuje kontroler widoku w różnych animowanych modach zgodnie z opcją Prezentacji, obejmujący poprzedni kontroler widoku - najczęściej używany do prezentacji kontrolera widoku, który animuje od dołu i obejmuje cały ekran na iPhonie lub iPadzie często przedstawia się go jako wyśrodkowane pole, które przyciemnia kontroler widoku prezentującego
Przykład: Wybieranie Touch ID i kodu dostępu w Ustawieniach

Prezentacja popover - po uruchomieniu na iPadzie miejsce docelowe pojawia się w popover, a stuknięcie w dowolnym miejscu poza tym popover spowoduje jego odrzucenie lub popover iPhone'a również są obsługiwane, ale domyślnie będzie wyświetlać miejsce docelowe modalnie na pełnym ekranie
Przykład: Stukanie przycisk + w Kalendarzu

Niestandardowy - możesz wdrożyć własny niestandardowy segment i mieć kontrolę nad jego zachowaniem

Nieaktualne sekwencje są zasadniczo nieadaptacyjnymi odpowiednikami tych opisanych powyżej. Te typy segregacji były przestarzałe w iOS 8: Push, Modal, Popover, Replace.

Aby uzyskać więcej informacji, możesz przeczytać dokumentację Korzystanie z segmentów, która również wyjaśnia typy segu i jak ich używać w serii ujęć. Zapoznaj się także z sesją 216 Budowanie aplikacji adaptacyjnych za pomocą UIKit z WWDC 2014. Rozmawiali o tym, jak tworzyć aplikacje adaptacyjne przy użyciu tych nowych segmentów adaptacyjnych, i zbudowali projekt demonstracyjny, który wykorzystuje te sekwencje.

Jordan H.
źródło
czy potrafisz zdefiniować różnicę między sekwencjami Push i Show?
iGautham,
@Gautham Push to nieadaptacyjna i przestarzała seria, którą Show zastąpił.
Jordan H
Dzięki @Joey. Rozumiem. Mam do ciebie kolejne pytanie. Widzę, że Show jest adaptacyjny w kontekście klas Size. Myślisz, że coś tu brakuje?
iGautham
@Gautham Niestety nie rozumiem, o co chodzi. Tak, program jest adaptacyjny, a push nie.
Jordan H
@Joey jako nowicjusz na ios dev Chcę podziękować za wyjaśnienie. 1) .Ale jaka jest różnica między show / modal segue? Mam na myśli, jeśli dodasz własny niestandardowy przycisk Wstecz do VC pokazanego jako modalne. 2.) Jakiego rodzaju segmentu należy użyć, jeśli chcę zresetować stos nawigacji? Na przykład. Użytkownik klika konto, a następnie zostaje przeniesiony na stronę swojego konta w aplikacji. Strona konta powinna następnie wyświetlać ikonę / menu hamburgera zamiast strzałki wstecz do poprzedniej VC?
user2722667,
173

Dla jasności chciałbym zilustrować powyższą odpowiedź @ Joeya poniższymi gifami:

Pokazać

wprowadź opis zdjęcia tutaj

Pokaż szczegół

wprowadź opis zdjęcia tutaj

Przedstaw modalnie

wprowadź opis zdjęcia tutaj

Obecny jako Popover

wprowadź opis zdjęcia tutaj

Ambroise Collon
źródło
3
Jest to doskonała reprezentacja wizualna, ale jedna korekta: segment Pokaż szczegóły działa jak segregacja modalna na iPhonie zamiast zachowania segmentu „Pokaż”, jak pokazano tutaj.
Zig
Doskonała prezentacja
shubham mishra
22

Wygląda na to, że dokument został przeniesiony tutaj: https://help.apple.com/xcode/mac/8.0/#/dev564169bb1

Nie można skopiować tutaj ikon, ale oto opisy:

  • Pokaż : Prezentuj zawartość w obszarze szczegółów lub obszarze głównym w zależności od zawartości ekranu.

    Jeśli aplikacja wyświetla widok główny i szczegółowy, zawartość jest wypychana do obszaru szczegółowego. Jeśli aplikacja wyświetla tylko wzorzec lub szczegół, zawartość jest umieszczana na wierzchu bieżącego stosu kontrolera widoku.

  • Pokaż szczegóły : wyświetl zawartość w obszarze szczegółów.

    Jeśli aplikacja wyświetla widok główny i szczegółowy, nowa treść zastępuje bieżący szczegół. Jeśli aplikacja wyświetla tylko wzorzec lub szczegół, treść zastępuje górę bieżącego stosu kontrolera widoku.

  • Prezentuj modalnie : prezentuj zawartość modalnie.

  • Prezentuj jako popover : Prezentuj zawartość jako popover zakotwiczony w istniejącym widoku.

  • Niestandardowe : twórz własne zachowania, korzystając z niestandardowego segmentu.

endawid
źródło
0

Dla tych, którzy wolą bardziej praktyczną naukę, wybierz segue w doku, otwórz inspektora atrybutów i przełączaj między różnymi rodzajami segu (rozwijane „Rodzaj”). Ujawni to opcje specyficzne dla każdego z nich: na przykład możesz zobaczyć, że „obecny modalnie” pozwala wybrać typ przejścia itp.

jreft56
źródło