title: How to add icons to the List View Builder list in flutter?
body: <p>This is a very basic app which highlights the selected colour on tap.But i want leading icons to the list view. How can i achieve this? If i am adding an icon inside a widget, the same icon is being rendered everywhere. I want unique icons for each list. Please help. Here's my code:</p>
  <p>I want to render the icons for each list.</p>
  <pre><code> void main() {
        runApp(MyApp());
      }
      
      class MyApp extends StatelessWidget {
        @override
        Widget build(BuildContext context) {
          return MaterialApp(
            title: 'Flutter Demo',
            theme: ThemeData(
              primarySwatch: Colors.blue,
            ),
            home: MyHomePage(title: 'Flutter Demo Home Page'),
          );
        }
      }
      
      class MyHomePage extends StatefulWidget {
        MyHomePage({Key key, this.title}) : super(key: key);
        final String title;
      
        @override
        _MyHomePageState createState() =&gt; _MyHomePageState();
      }
      
      class _MyHomePageState extends State&lt;MyHomePage&gt; {
        List&lt;String&gt; texts = ['ME', 'MYSELF', 'I'];
        List&lt;bool&gt; isHighlighted = [true, false, false];
      
        @override
        Widget build(BuildContext context) {
          return Scaffold(
            appBar: AppBar(
              title: Text('Demo App'),
            ),
            drawer: Drawer(
              child: Center(
                child: Column(children: &lt;Widget&gt;[
                  Expanded(
                    child: ListView.builder(
                        itemCount: texts.length,
                        itemBuilder: (_, index) {
                          return GestureDetector(
                            onTap: () {
                              for (int i = 0; i &lt; isHighlighted.length; i++) {
                                setState(() {
                                  if (index == i) {
                                    isHighlighted[index] = true;
                                  } else {
                                    //the condition to change the highlighted item
                                    isHighlighted[i] = false;
                                  }
                                });
                              }
                            },
                            child: Container(
                              color: isHighlighted[index]
                                  ? Colors.blueAccent
                                  : Colors.white,
                              child: ListTile(
                                //i want to display different items for each list in the leading property.
      
                                title: Text(texts[index]),
                              ),
                            ),
                          );
                        }),
                  ),
                  Container(
                    child: Text(
                      'this is footer',
                      style: TextStyle(fontSize: 20),
                    ),
                  )
                ]),
              ),
            ),
          );
        }
      }
  </code></pre>