Qual è la differenza tra tutti i Segues di selezione?


300
  • Mostrare
  • Mostra i dettagli
  • Presente modalmente
  • Presentazione di Popover
  • costume

inserisci qui la descrizione dell'immagine

Qual'è la differenza tra loro? Non sono riuscito a trovare alcuna documentazione su di esso. Ce n'erano alcuni che ho trovato in una ricerca su Google, ma ora non c'è più: https://developer.apple.com/library/ios/recipes/xcode_help-interface_builder/articles-storyboard/StoryboardSegue.html



segue il link della documentazione è help.apple.com/xcode/mac/8.0/#/dev564169bb1
Cœur

Risposte:


535

Ecco un breve riepilogo dei segues e un esempio per ogni tipo.

Mostra - Spinge il controller della vista di destinazione nello stack di navigazione, scorrendo sopra da destra a sinistra, fornendo un pulsante indietro per tornare alla fonte - oppure, se non è incorporato in un controller di navigazione, verrà presentato in modo modale
Esempio: Navigazione di caselle di posta / cartelle in Mail

Mostra dettagli : per l'uso in un controller con vista divisa, sostituisce il controller con dettagli / vista secondaria in un'interfaccia a 2 colonne espansa, altrimenti, se compresso a 1 colonna, inserirà un controller di navigazione
Esempio: in Messaggi, toccando una conversazione verrà visualizzato il dettagli sulla conversazione: sostituzione del controller di visualizzazione sulla destra in un layout a due colonne o push della conversazione in un layout a colonna singola

Present Modally - Presenta un controller di visualizzazione in varie mode animate come definito dall'opzione Presentazione, che copre il controller di visualizzazione precedente - più comunemente usato per presentare un controller di visualizzazione che si anima dal basso e copre l'intero schermo su iPhone, o su iPad è comune presentarlo come una casella centrata che oscura il controller della vista di presentazione
Esempio: selezione di Touch ID e passcode in Impostazioni

Presentazione di Popover - Quando eseguita su iPad, la destinazione appare in un popover e toccando un punto qualsiasi al di fuori di questo popover la disattiverà, o su iPhone sono supportati anche i popover ma per impostazione predefinita presenterà la destinazione modalmente sullo schermo intero
Esempio: Toccando il pulsante + in Calendar

Personalizzato : è possibile implementare i propri follow personalizzati e avere il controllo sul suo comportamento

I seguaci deprecati sono essenzialmente gli equivalenti non adattativi di quelli sopra descritti. I seguenti tipi sono stati deprecati in iOS 8: Push, Modal, Popover, Replace.

Per maggiori informazioni, puoi leggere la documentazione sull'utilizzo di Segues che spiega anche i tipi di segues e come usarli in uno Storyboard. Dai un'occhiata anche a Session 216 Creazione di app adattive con UIKit dal WWDC 2014. Hanno parlato di come creare app adattive utilizzando questi nuovi follow adattivi e hanno creato un progetto dimostrativo che utilizza questi follower.


puoi definire la differenza tra Push e Show segues?
iGautham,

@Gautham Push è il seque non adattativo e deprecato che Show ha sostituito.
Jordan H,

Grazie @Joey. Posso capire che. Ho un'altra domanda per te. Vedo che Show è adattivo nel contesto delle classi Size. Pensi che mi manchi qualcosa qui?
iGautham,

@Gautham Mi dispiace non capisco quale sia la domanda. Sì, lo spettacolo è adattivo e la spinta no.
Jordan H,

@Joey come un principiante su iOS Dev voglio dire grazie per averlo chiarito. 1) Ma qual è la differenza tra show / modal segue? Voglio dire se aggiungi il tuo pulsante indietro personalizzato al VC mostrato come modale. 2.) Che tipo di segue devo usare se voglio ripristinare lo stack di navigazione? Per esempio. L'utente fa clic sull'account e viene quindi portato alla pagina del proprio account nell'app. La pagina dell'account dovrebbe quindi visualizzare un'icona / menu di hamburger anziché una freccia indietro sul VC precedente?
user2722667,

173

Per chiarezza, vorrei illustrare la risposta di @ Joey sopra con queste gif:

Mostrare

inserisci qui la descrizione dell'immagine

Mostra i dettagli

inserisci qui la descrizione dell'immagine

Presente modalmente

inserisci qui la descrizione dell'immagine

Presente come Popover

inserisci qui la descrizione dell'immagine


3
Questa è un'ottima rappresentazione visiva, ma una correzione: lo Show Detail segue si comporta come un follow modale su iPhone invece del comportamento "Show" segue come mostrato qui.
Zig,

Presentazione eccellente
shubham mishra l'

22

Il documento è stato spostato qui sembra: https://help.apple.com/xcode/mac/8.0/#/dev564169bb1

Non è possibile copiare le icone qui, ma ecco le descrizioni:

  • Mostra : presenta il contenuto nel dettaglio o nell'area principale in base al contenuto dello schermo.

    Se l'app visualizza una vista principale e di dettaglio, il contenuto viene inserito nell'area di dettaglio. Se l'app visualizza solo il master o i dettagli, il contenuto viene spostato in cima allo stack del controller di visualizzazione corrente.

  • Mostra dettagli : presenta il contenuto nell'area dei dettagli.

    Se l'app visualizza una vista principale e dei dettagli, il nuovo contenuto sostituisce i dettagli correnti. Se l'app visualizza solo il master o i dettagli, il contenuto sostituisce la parte superiore dello stack del controller di visualizzazione corrente.

  • Present Modally : presenta il contenuto in modo modale.

  • Present as Popover : presenta il contenuto come popover ancorato a una vista esistente.

  • Personalizzato : crea i tuoi comportamenti utilizzando un follow personalizzato.


0

Per coloro che preferiscono un apprendimento un po 'più pratico, seleziona il segue in dock, apri la finestra di ispezione degli attributi e passa tra diversi tipi di segues (menu a discesa "Kind"). Questo rivelerà opzioni specifiche per ciascuno di essi: ad esempio puoi vedere che "present modally" ti consente di scegliere un tipo di transizione ecc.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.