ListView construction properly done

This commit is contained in:
2023-12-26 21:08:23 +02:00
parent 09a8774423
commit e9b9e49509

View File

@@ -23,31 +23,34 @@ class _FetchAPIState extends State<FetchAPI> {
appBar: AppBar( appBar: AppBar(
title: const Text("Fetching API"), title: const Text("Fetching API"),
), ),
body: ListView( body: Row(
children: [ children: <Widget>[
FutureBuilder<List<Arrival>>( Expanded(
future: fetchedArrivals, child: SizedBox(
builder: (context, snapshot) { child: FutureBuilder<List<Arrival>>(
if (snapshot.connectionState == ConnectionState.waiting) { future: fetchedArrivals,
return const CircularProgressIndicator(); builder: (context, snapshot) {
} else if (snapshot.hasError) { if (snapshot.connectionState == ConnectionState.waiting) {
return Text('Failed to fetch data.\nError: ${snapshot.error}'); return const CircularProgressIndicator();
} else { } else if (snapshot.hasError) {
return ListView.builder( return Text('Failed to fetch data.\nError: ${snapshot.error}');
itemCount: snapshot.data!.length, } else {
itemBuilder: (context, index) { return ListView.builder(
return ListTile( itemCount: snapshot.data!.length,
title: Text(snapshot.data![index].timeOfDay), itemBuilder: (context, index) {
return ListTile(
title: Text(snapshot.data![index].timeOfDay),
);
},
); );
}, }
); },
} ),
}, ),
), ),
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.pushNamedAndRemoveUntil( Navigator.pushNamedAndRemoveUntil(context, '/', (route) => false);
context, '/', (route) => false);
}, },
child: Container( child: Container(
padding: const EdgeInsets.all(20.0), padding: const EdgeInsets.all(20.0),
@@ -58,4 +61,10 @@ class _FetchAPIState extends State<FetchAPI> {
), ),
); );
} }
@override
void initState() {
super.initState();
fetchedArrivals = fetchArrivals();
}
} }