Issue
I’m using listView builder and it’s working fine but giving an ERROR AT THE LAST : Rangeerror (index) : index out of range :index should be less than 30: 30.
The following is my code –
child: data != null
? ListView.builder(itemBuilder: (context, index) {
return Container(
padding: const EdgeInsets.all(4.0),
decoration: BoxDecoration(
color: Colors.white10,
borderRadius: BorderRadius.circular(10),
boxShadow: [
BoxShadow(
blurRadius: 15,
offset: Offset(0, 0),
color: Color(0x42000000).withOpacity(.08),
spreadRadius: -10)
]),
child: Padding(
padding: const EdgeInsets.all(4.0),
child: ListTile(
leading: Container(
width: 100,
child: Text(data["items"][index]["owner"]
["display_name"]),
),
title: Text(data["items"][index]["title"]),
onTap: () {
Navigator.pop(context);
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => Answers(
number: index,
)),
);
},
),
),
);
})
: Center(
child: CircularProgressIndicator(),
),
),
)
Solution
you’re missing itemCount
property
add it to ListView.builder
itemCount: (data["items"] as List).lenght;
Answered By – Nagual
Answer Checked By – David Marino (FlutterFixes Volunteer)