ScrollView Reader e anchor
Scorra programmaticamente fino a elementi specifici.
ScrollView Reader e anchor è una lezione SwiftUI Academy gratuita su CoddyKit. Questa è la lezione 4 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.
Passare direttamente al contenuto
A volte è necessario scorrere fino a un elemento specifico nel codice, ad esempio con un pulsante Torna all'inizio. ScrollViewReader lo rende possibile. 🎯
Avvolgere lo ScrollView
Inserisca ScrollViewReader intorno allo ScrollView: le fornirà un proxy da usare per controllare lo scorrimento.
ScrollViewReader { proxy in
ScrollView {
Content()
}
}Assegnare un tag a ogni elemento
Assegni agli elementi scorrevoli un id univoco, così il reader saprà esattamente dove saltare quando glielo chiede.
ForEach(items) { item in
Row(item).id(item.id)
}Chiamare scrollTo
Il proxy ha un metodo fondamentale: scrollTo. Passi un id e lo ScrollView porterà quell'elemento nell'area visibile.
proxy.scrollTo(42)Animare il salto
Inserisca la chiamata in withAnimation, così lo scorrimento sarà fluido invece di saltare istantaneamente alla destinazione.
withAnimation {
proxy.scrollTo(42)
}Ancorare la posizione
L'argomento anchor decide dove verrà posizionato l'elemento: .top lo fissa in alto, .center al centro.
proxy.scrollTo(42, anchor: .top)Pulsante Torna all'inizio
Un modello comune consiste in un pulsante che chiama scrollTo sull'id del primo elemento, riportando rapidamente l'utente in cima.
Button("Top") {
proxy.scrollTo(firstID, anchor: .top)
}Saltare all'apparizione
Chiami scrollTo all'interno di onAppear per aprire una lista lunga già posizionata sulla riga più recente non letta dall'utente.
.onAppear {
proxy.scrollTo(lastReadID)
}Gli ID devono corrispondere
Se scrollTo non produce alcun effetto, verifichi che l'id passato corrisponda esattamente a un id assegnato a un elemento visibile.
Abbinarlo a State
Attivi lo scorrimento modificando uno @State, ad esempio quando viene selezionato un risultato di ricerca, per guidare automaticamente l'utente.
onChange(of: selected) { id in
proxy.scrollTo(id)
}Navigazione senza sforzo
Con ScrollViewReader e gli anchors, le schermate lunghe diventano facili e piacevoli da navigare invece di richiedere uno scorrimento interminabile. ✨
Verifica rapida
Pensi a come spostarti fino a una riga specifica.
Riepilogo
Ha imparato a usare ScrollViewReader, ad assegnare gli id agli elementi e a chiamare scrollTo con gli anchor per raggiungere qualsiasi punto del codice. 🎉
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 «ScrollView Reader e anchor» è gratuita?
Sì — il testo completo di «ScrollView Reader e anchor» è 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 «ScrollView Reader e anchor»?
Scorra programmaticamente fino a elementi specifici. 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 4 di 4.
Quanto tempo richiede la lezione «ScrollView Reader e anchor»?
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
- ScrollView orizzontale e verticale
- LazyVStack e LazyHStack
- Griglie adattive con LazyVGrid
- ScrollView Reader e anchor