Ho una lista che inizia con 50 voci e voglio aggiungerne altre mentre l'utente scorre l'elenco, ma prima che raggiunga la fine della lista. Ho utilizzato la proprietà atEnd per sapere quando sono alla fine dell'elenco e aggiungere altri elementi a quel punto, ma preferirei iniziare ad aggiungere nuovi elementi quando sono al 50% - 75% del modo attraverso l'elenco, in modo che l'utente abbia meno probabilità di essere lasciato in attesa di ulteriori datiCome posso aggiungere più elementi a un ListView prima di raggiungere la fine dell'elenco su un'app BB10?
6
A
risposta
7
È possibile utilizzare il segnale onFirstVisibleItemChanged per scoprire fino a che punto si è nella lista. Utilizza il primovisibleitem e la dimensione corrente del modello di dati per ottenere la tua posizione corrente nell'elenco. Se quella posizione rientra nei limiti impostati (50% e 75% nel mio codice di esempio), eseguire il codice per aggiungere altri elementi al modello dati.
Non impostare un numero esatto, in quanto il segnale potrebbe non catturare esattamente il 50% del modo attraverso l'elenco, e si dovrebbe anche mantenere un controllo per quando si preme la fine della lista come failsafe in caso l'utente supera l'intervallo impostato.
ListView {
dataModel: listDataModel
objectName: "listView"
attachedObjects: [
ListScrollStateHandler {
property int position
id: scrollStateHandler
onScrollingChanged: {
if (atEnd) {
//code to run if you hit the end of the list
}
}
onFirstVisibleItemChanged: {
if (position < firstVisibleItem) {
console.log("Scrolling Down")
var size = listDataModel.size();
var percent = firstVisibleItem/size * 100;
console.log("Percent: " + percent + "%");
if (50 < percent < 75) {
//do stuff
}
} else if (position > firstVisibleItem) {
console.log("Scrolling Up");
}
position = parseInt(firstVisibleItem);
}
}
]}
Problemi correlati
- 1. Android - ListView per caricare più elementi quando raggiunto la fine
- 2. Come raggiungere la fine di un'espressione AST
- 3. Come aggiungere/rimuovere elementi a un ListView in modalità virtuale?
- 4. Come posso aggiungere uno spazio vuoto alla fine di un ListView?
- 5. WPF ListView - come aggiungere elementi a livello di codice?
- 6. Aggiunta di elementi a un controllo ListView?
- 7. listview dinamico aggiungendo "Carica più elementi" alla fine del scroll
- 8. Come velocizzare l'aggiunta di elementi a un ListView?
- 9. Come aggiungere più elementi a un elenco in Emacs lisp
- 10. Come posso aggiungere elementi a un insieme vuoto in python
- 11. Scala Swing ListView aggiungere elementi Eventi
- 12. Come aggiungere più visualizzazioni di intestazione in un ListView
- 13. Come posso aggiungere più UIBarButtonItem a UINavigationBar?
- 14. Android: come posso aggiungere collegamenti HTML all'interno di un ListView?
- 15. Aggiungi elementi a ListView - Android
- 16. Aggiunta di elementi a Listview in jqueryMobile
- 17. Aggiungere più elementi a un arraylist già inizializzato in java
- 18. Aggiungere un GridView a un ListView in Android
- 19. Come aggiungere separatori di sezioni/divisori a un ListView?
- 20. Perché non posso aggiungere la prima intestazione a getPreferenceScreen?
- 21. Come creare un ListView con elementi trascinabili?
- 22. Come posso deselezionare la voce in ListView?
- 23. Come aggiungere un'annotazione su elementi distinti?
- 24. Come posso aggiungere più attributi a un Enum?
- 25. Elementi filtro QML ListView
- 26. Come posso aggiungere un badge a un UIButton standard?
- 27. Alla ricerca di un modo per aggiungere dinamicamente più elenchi in fondo a jQuery Mobile listview
- 28. Come aggiungere gli elementi a un oggetto PanoramaItem in WP7
- 29. ListView Android aggiungere elementi in cima senza visualizzazione elenco scorrere
- 30. Android ListView Floating prima riga
Ottima risposta, grazie! Non avrei mai pensato a questo da solo – krilovich