일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- .NET
- MS-SQL
- Animation
- MSSQL
- spring boot
- JavaScript
- 플러터
- AnimationController
- db
- 자바스크립트
- page
- 오류
- React JS
- Maui
- GitHub
- 닷넷
- 마우이
- 애니메이션
- 파이어베이스
- Firebase
- HTML
- 리엑트
- 바인딩
- 함수
- typescript
- 깃허브
- Binding
- listview
- MVVM
- Flutter
Archives
- Today
- Total
개발노트
18. [Flutter] ThemeData() 로 위젯 디자인 한번에 지정하기(Color, Font 등) 본문
반응형
ThemeData()
Flutter에서 ThemeData 클래스는 앱의 전체적인 디자인 테마를 지정하는 데 사용됩니다.
ThemeData를 사용하여 앱의 색상, 텍스트 스타일, 아이콘 테마 등을 일관되게 설정할 수 있습니다.
ThemeData는 MaterialApp 위젯의 theme: 속성 에 주로 사용되지만, Cupertino 앱의 디자인도 지정할 수 있습니다.
- 색상 지정
- primaryColor: 앱의 기본 색상
- accentColor: 강조 색상
- scaffoldBackgroundColor: 스카폴드(전체 앱 화면)의 배경색
- backgroundColor: 앱의 일반적인 배경색
등... - 텍스트 스타일 지정
- textTheme: 앱 전체의 텍스트 스타일을 설정합니다. 예: headline1, headline2, bodyText1 등
- fontFamily: 기본 폰트 패밀리
- appBarTheme: 앱바의 텍스트 스타일 지정
등... - 아이콘 테마 지정
- iconTheme: 아이콘의 기본 크기, 색상 등을 설정합니다. - 버튼 테마 지정
- buttonTheme: 버튼의 기본 스타일과 색상을 설정합니다. - 기타 속성
- cardTheme: 카드 위젯의 테마 지정
- inputDecorationTheme: 입력 필드 위젯의 테마 지정
- appBarTheme: 앱바의 테마 지정
등...
사용 예시.
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'MyApp',
theme: ThemeData(
scaffoldBackgroundColor: Colors.white,
appBarTheme: const AppBarTheme(backgroundColor: Colors.white),
primaryColor: const Color(0xFFE9435A)),
home: const SignUpScreen());
}
}
설명.
- scaffoldBackgroundColor: scaffold 위젯 전체의 배경색을 흰색 (Colors.white)으로 지정합니다.
- appBarTheme: 앱바의 테마를 설정하며, AppBarTheme의 backgroundColor 속성을 사용하여 앱바의 배경색을 흰색 (Colors.white)으로 지정합니다.
- primaryColor: 앱의 기본 색상을 지정하며, 빨간색 (Color(0xFFE9435A))으로 설정되어 있습니다.
반응형
'앱 개발 > Flutter' 카테고리의 다른 글
20. [Flutter] Form 여러 개가 입력된 데이터 유효성 검사하기(with GlobalKey) (0) | 2023.06.27 |
---|---|
19. [Flutter] TextField 텍스트 입력 창 다루기(with TextEditingController, AnimatedContainer) (0) | 2023.06.16 |
17. [Flutter] font awesome 위젯으로 Icon 사용하기 (0) | 2023.06.15 |
16. [Flutter] FractionallySizedBox 부모위젯 공간 비율로 자식위젯 너비, 높이 정하기 (0) | 2023.06.14 |
15. [Flutter] Chat GPT 챗봇 만들기 (0) | 2023.04.24 |
Comments