Reputation: 754
How can apply listview builder using the model and data as below to achieve the layout in the screenshot:
Model
class Location {
String name;
String imagePath;
String summary;
Location(this.name, this.imagePath, this.summary);
}
Data
import 'package:app_data_model/model/location.dart';
var locationData = [
Location(
'Statue of Liberty',
'assets/images/new-york-city-statue-of-liberty.jpg',
'The Statue of Liberty was France\'s gift to America. Built in 1886, it remains a famous world symbol of freedom and one of the greatest American icons. '),
Location(
'Central Park',
'assets/images/new-york-city-central-park-lake-bridge-boats.jpg',
'A walk, peddle, or carriage ride through the crisscrossing pathways of Central Park is a must-do on anyone\'s New York City itinerary. '),
Location(
'Empire State Building',
'assets/images/new-york-city-empire-state-building.jpg',
'The Empire State Building is one of New York\'s most famous landmark buildings and key tourist attractions. The 381-meter-tall, 102-storey building was the tallest in the world until the 1 World Trade Center tower rose higher, 41 years later. ')
];
Upvotes: 0
Views: 209
Reputation: 121
ListView.builder(itemCount: locationData.length, (BuildContext context,index)=>ListTile(leading: Image.network(locationData[index].image),title :Text(locationData[index].locationName);)
check the Location model to get the right attributes
Upvotes: 1
Reputation: 14033
Added a demo based on what you want:
class StackOver extends StatelessWidget {
var locationData = [
Location(
'Statue of Liberty',
'assets/images/new-york-city-statue-of-liberty.jpg',
'The Statue of Liberty was France\'s gift to America. Built in 1886, it remains a famous world symbol of freedom and one of the greatest American icons. '),
Location(
'Central Park',
'assets/images/new-york-city-central-park-lake-bridge-boats.jpg',
'A walk, peddle, or carriage ride through the crisscrossing pathways of Central Park is a must-do on anyone\'s New York City itinerary. '),
Location(
'Empire State Building',
'assets/images/new-york-city-empire-state-building.jpg',
'The Empire State Building is one of New York\'s most famous landmark buildings and key tourist attractions. The 381-meter-tall, 102-storey building was the tallest in the world until the 1 World Trade Center tower rose higher, 41 years later. ')
];
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('Solve Before Downvote !'),
),
body: ListView.builder(
// give the listview a length based on your location data
itemCount: locationData.length,
itemBuilder: (context, index) {
// return a custom widget based on your preference
return ListTile(
// access the imagePath of your [locationData] using the index provided by the itembuilder
leading: Image.asset(
locationData[index].imagePath,
),
// access the name of your [locationData] using the index provided by the itembuilder
title: Text(
locationData[index].name,
),
);
},
),
);
}
}
RESULT:
Upvotes: 2