Wie setze ich die Anfangsseitengröße korrekt ein, während ein fauler Lade -Listansicht in Flutter implementiert wird?Android

Forum für diejenigen, die für Android programmieren
Anonymous
 Wie setze ich die Anfangsseitengröße korrekt ein, während ein fauler Lade -Listansicht in Flutter implementiert wird?

Post by Anonymous »

Ich versuche, eine faule Lade -Listansicht in meiner Flutter -App zu implementieren. Wenn Benutzer nach unten scrollen, holen wir mehr Daten vom Server. Nehmen wir an, es gibt total 100 Artikel und ich hole 10 davon am Anfang. Also macht Flattern die ListView nicht krollbar. Daher sind wir nicht in der Lage, den Boden zu erreichen, und das Abrufen wird nicht ausgelöst.

Code: Select all

void _scrollListener() {
// Check if we are at the bottom of the list and loading isn't in progress
if (_scrollController.position.pixels == _scrollController.position.maxScrollExtent && !_isLoading) {
_loadMoreItems();
}
}

Future _loadMoreItems() async {
setState(() {
_isLoading = true;
});

// Simulate a network request (wait 2 seconds)
await Future.delayed(Duration(seconds: 2));

// Fetch more items
final newItems = List.generate(10, (index) => _items.length + index);

setState(() {
_isLoading = false;
_items.addAll(newItems);
});
}

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('Lazy Loading ListView')),
body: ListView.builder(
controller: _scrollController,
itemCount: _items.length + 1, // +1 for the loading indicator
itemBuilder: (context, index) {
if (index == _items.length) {
// Show loading indicator at the bottom when more items are being fetched
return _isLoading
? Center(child: CircularProgressIndicator())
: SizedBox.shrink();
}
return ListTile(title: Text('Item ${_items[index]}'));
},
),
);
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post