InfiniteScroll
InfiniteScroll-komponentti webforJ:ssä lataa automaattisesti lisää sisältöä, kun käyttäjät selaavat alaspäin, mikä eliminoi sivutuksen tarpeen. Tämä luo sujuvan kokemuksen luetteloille, syötteille ja dataraskaille näkymille lataamalla sisältöä vain tarvittaessa.
Kun käyttäjät saavuttavat scrollattavan sisällön alaosan, InfiniteScroll laukaisee tapahtuman lisää tietoa ladatessa. Kun uusi sisältö latautuu, se näyttää Spinner -komponentin, jossa on mukautettavaa tekstiä, joka osoittaa, että lisää kohteita on tulossa.
Tilan hallinta
InfiniteScroll-komponentti lähettää tapahtumia ja ylläpitää sisäistä tilaa auttaakseen hallitsemaan, miten ja milloin sisältöä ladataan.
Näytä koodi
- InfiniteScrollView.java
- infinitescroll.css
Jotta voit ladata lisää tietoa, kun käyttäjä selaa, käytä onScroll() tai addScrollListener() -menetelmää rekisteröidäksesi kuuntelijan. Kuuntelijassa lataat tyypillisesti lisäsisältöä ja kutsut update()-metodia päivittääksesi InfiniteScroll-tilan.
infiniteScroll.onScroll(event -> {
infiniteScroll.add(new Paragraph("Ladattu kohde"));
infiniteScroll.update();
});
Kun kaikki sisältö on ladattu, merkitse scrollaus valmiiksi, jotta estät lisälaatikoinnin. Kun olet asettanut valmiiksi, muista kutsua update() soveltaaksesi uutta tilaa:
infiniteScroll.setCompleted(true);
infiniteScroll.update();
Tämä estää lisäinfinite scroll -käyttäytymisen.
Voit nollata tämän lipun käyttämällä setCompleted(false), jos myöhemmin sallit käyttäjän ladata lisää sisältöä (esim. päivityksen jälkeen).
Latausilmoituksen mukauttaminen
Oletusarvoisesti InfiniteScroll näyttää sisäänrakennetun latausilmoituksen - pienen animaation Spinner yhdistettynä "Ladataan tietoja" -tekstiin. Voit muuttaa näytettävää tekstiä välittämällä mukautetun viestin InfiniteScroll-konstruktoriin tai k äyttämällä setText()-metodia.
InfiniteScroll infiniteScroll = new InfiniteScroll("Ladataan lisää tietueita...");
infiniteScroll.setText("Ladataan lisää kohteita...");
Vastaavasti voit mukauttaa lataamisen aikana näytettävää Ikonia käyttämällä setIcon().
Näytä koodi
- InfiniteScrollLoadingView.java
- infinitescroll.css
Täysi mukauttaminen
Jos haluat täysin korvata sekä Spinner että tekstin omalla merkinnälläsi,
voit lisätä sisältöä suoraan erityiseen sisältöpaikkaan käyttämällä addToContent().
Kun täytät sisältöpaikan, se korvata oletusarvoisen latauslokakuvastruktuurin kokonaan.
Näytä koodi
- InfiniteScrollCustomLoadingView.java
- infinitescrollcustom.css