I'm receiving the following error while trying to add elements from my for loop to my List...

NoSuchMethodError: The method 'addAll' was called on null.
    Receiver: null
    Tried calling: addAll("LrWr826cd3Y")

Here is my code...

Future getData() async {
    //Map videoId;

    String url = 'https://Youtube API';
    var httpClient = createHttpClient();
    var response = await httpClient.read(url);
    Map data = JSON.decode(response);
    var videos = data['items']; //returns a List of Maps

    List searchTitles;
    List searchIds;
    List searchImages;

    for (var items in videos) {
      //iterate over the list
      Map myMap = items; //store each map
      final video = (myMap['id'] as Map);
      final details = (myMap['snippet'] as Map);
      final videoimage = (details['thumbnails'] as Map);
      final medium = (videoimage['medium'] as Map);


    setState(() { });

    if (!mounted) return;

print(video['videoId']); successfully lists the 3 Youtube video ids as Strings. searchIds.addAll(video['videoId']); throws the error. I've tried both searchIds.add and searchIds.addAll. Where am I going wrong?

I would like to eventually push these lists to my List class here..

class CardInfo {
  List id;
  List title;
  List video;

  CardInfo.fromJson(List json) {

Solution 1: milad zahedi

You are not instantiating your searchIds object. add this

List searchIds = new ArrayList<>();


List searchIds = new List();