SwiftUI Academy · Lezione

Detents e indicatori di trascinamento

Ridimensioni le sheet con i detent di presentazione.

Lezione 2 di 413 passaggi

Detents e indicatori di trascinamento è una lezione SwiftUI Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento SwiftUI Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso SwiftUI Academy include 4 lezioni in totale.

Cosa sono i detent

Un detent è un’altezza di arresto a cui una sheet può fermarsi, ad esempio a metà o a schermo intero. Permette agli utenti di ridimensionare la sheet trascinandola. 📏

Il modificatore presentationDetents

Aggiunga presentationDetents al contenuto della sheet per elencare le altezze a cui può agganciarsi. Passi un insieme di detent per abilitare il ridimensionamento.

.presentationDetents([.medium, .large])

Medio e grande

I due detent integrati sono .medium, circa metà dello schermo, e .large, quasi a tutta altezza. Offra entrambe le opzioni, così gli utenti potranno scegliere quella più adatta.

.presentationDetents([.medium, .large])

Un detent ad altezza fissa

Usi .height per fissare una sheet a una dimensione esatta in punti. È ideale per moduli brevi che non devono diventare più alti del necessario.

.presentationDetents([.height(220)])

Un detent frazionario

Il detent .fraction dimensiona la sheet in base a una frazione dello schermo, ad esempio un terzo. Si adatta bene a dispositivi di dimensioni diverse.

.presentationDetents([.fraction(0.33)])

L’indicatore di trascinamento

La piccola barra in alto è l’indicatore di trascinamento. Suggerisce che la sheet può essere trascinata verso l’alto, verso il basso o chiusa.

Mostrare l’indicatore

Imposti presentationDragIndicator su .visible per mostrare sempre l’indicatore, anche quando è disponibile un solo detent.

.presentationDragIndicator(.visible)

Combinare i modificatori

I detent e l’indicatore di trascinamento possono essere combinati sul contenuto della sheet. Applichi entrambi per ottenere una sheet ridimensionabile con una maniglia ben visibile. ✨

ContentView()
    .presentationDetents([.medium, .large])
    .presentationDragIndicator(.visible)

Tenere traccia del detent selezionato

Colleghi presentationDetents a un valore di stato per sapere quale altezza ha scelto l’utente, così il layout può reagire alle dimensioni correnti.

.presentationDetents([.medium, .large], selection: $detent)

Perché i detent sono importanti

I detent rendono le sheet non bloccanti. Una sheet media consente agli utenti di dare un’occhiata al contenuto continuando a vedere la schermata sottostante.

Un solo detent, nessun ridimensionamento

Se passa un solo detent, la sheet mantiene un’altezza fissa e non può essere ridimensionata, anche se può comunque essere chiusa con uno scorrimento.

.presentationDetents([.medium])

Verifica rapida

Quale modificatore permette a una sheet di agganciarsi a più altezze?

Riepilogo: detent

Ora può ridimensionare le sheet con detent come .medium, .large e .fraction, oltre a mostrare una maniglia con l’indicatore di trascinamento. Ottimi progressi! 🎉

Gratis per iniziare

Impara Swift con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
30
Lezioni
120

Domande Frequenti

La lezione «Detents e indicatori di trascinamento» è gratuita?

Sì — il testo completo di «Detents e indicatori di trascinamento» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso SwiftUI Academy, passa a CoddyKit PRO. Il corso SwiftUI Academy include 4 lezioni in totale.

Cosa imparerò in «Detents e indicatori di trascinamento»?

Ridimensioni le sheet con i detent di presentazione. Eserciti SwiftUI Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare SwiftUI Academy?

Non è richiesta alcuna esperienza precedente. SwiftUI Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.

Quanto tempo richiede la lezione «Detents e indicatori di trascinamento»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione SwiftUI Academy?

Sì. Ogni lezione SwiftUI Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Presentare una Sheet
  2. Detents e indicatori di trascinamento
  3. Alert con azioni
  4. Finestre di dialogo di conferma
← Torna a SwiftUI Academy