Flutter
[Flutter] 28. 구글 내장 아이콘과 Material 3
Song hyun
2024. 11. 7. 10:27
728x90
반응형
[Flutter] 28. 구글 내장 아이콘과 Material 3
1. 구글 내장 아이콘 사용하기
구글 폰츠 - [Icons]에서 사용할 아이콘들을 검색해 찾을 수 있다.
2. 아이콘의 스타일
- outlined: 윤곽선 스타일
- rounded: 둥근 스타일
- sharp: 직선 스타일
3. MaterialApp color theme과 Material 3 색상
- useMaterial3을 사용하면 Material 라이브러리의 최신 버전 사용 가능
- useMaterial3과 seedColor, Theme.of.colorScheme를 사용하면 Material3 디자인 가이드에 따른 색을 쓸 수 있다.
4. 시나리오 코드
(1) ColorScheme을 사용해 색상 지정하기
import 'package:flutter/material.dart';
void main(){
runApp(MaterialApp(
title:'MyApp3',
theme: ThemeData(
useMaterial3: true,
colorScheme: ColorScheme.fromSeed(seedColor: Colors.blue),
),
home:MyHomePage(),
));
}
class MyHomePage extends StatelessWidget {
const MyHomePage({super.key});
@override
Widget build(BuildContext context) {
return SafeArea(
child: Scaffold(
appBar: AppBar(
title: Text(
'My App 3',
style: TextStyle(
color: Colors.red
),
),
),
backgroundColor: Colors.blue,
)
);
}
}
(2) Material 3의 다양한 속성들 사용해보기
import 'package:flutter/material.dart';
void main(){
runApp(MaterialApp(
title:'MyApp3',
theme: ThemeData(
useMaterial3: true,
colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurpleAccent),
),
home:MyHomePage(),
));
}
class MyHomePage extends StatelessWidget {
const MyHomePage({super.key});
@override
Widget build(BuildContext context) {
return SafeArea(
child: Scaffold(
appBar: AppBar(
title: Text(
'My App 3',
style: TextStyle(
color: Theme.of(context).colorScheme.primary
),
),
),
backgroundColor: Theme.of(context).colorScheme.primaryContainer,
body: Column(
children: [
Container(
color: Theme.of(context).colorScheme.primaryContainer,
width: 50,
height: 50,
),
Container(
color: Theme.of(context).colorScheme.primaryContainer,
width: 50,
height: 50,
),
Container(
color: Theme.of(context).colorScheme.secondary,
width: 50,
height: 50,
),
Container(
color: Theme.of(context).colorScheme.secondaryContainer,
width: 50,
height: 50,
),
Container(
color: Theme.of(context).colorScheme.tertiary,
width: 50,
height: 50,
),
],
)
)
);
}
}
728x90
반응형