Expected a value of type 'MaterialColor?', but got one of type 'Color'

    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.black,
      ),
      home: MyHomePage(title: 'Flutter Demo Home Page'),
    );

앱 테마색상 변경시 Expected a value of type 'MaterialColor?', but got one of type 'Color' 오류가 난다면 색상의 Type이 달라서 생긴 오류입니다.

해결법 

primarySwatch: -> primaryColor: 로 변경합니다.

    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primaryColor: Colors.black,
      ),
      home: MyHomePage(title: 'Flutter Demo Home Page'),
    );

 

오류 원인

색상 Type이 달라서 발생한 오류 입니다. 

Colors.black 이후 마우스를 올려두면 색상 Type: Color 이며

오류가 발생 안하는 Green 인 경우 마우스를 올려두면 Type: MaterialColor 입니다.

primarySwatch 속성에는 MaterialColor Type 만 가능하기 때문에 Color Type인 색상을 값으로 넣었기 때문에

발생한 문제 입니다.

속성을 primaryColor 는 Color 와 MaterialColor 모두 수용 가능하기에 원하는 색상으로 사용 가능합니다.

 

 

 

+ Recent posts