Develop/Flutter

[Flutter] ThemeData 위젯의 모든 argument 설명

issuemaker99 2025. 2. 28. 11:27
728x90
ThemeData({
Brightness? brightness, // 앱의 밝기 (light 또는 dark)
MaterialColor? primarySwatch, // 기본 색상 팔레트
Color? primaryColor, // 기본 색상
Color? primaryColorLight, // 밝은 기본 색상
Color? primaryColorDark, // 어두운 기본 색상
Color? accentColor, // 강조 색상 (deprecated, 대신 colorScheme.secondary 사용)
Color? scaffoldBackgroundColor, // Scaffold의 배경 색상
Color? backgroundColor, // 배경 색상
Color? canvasColor, // Material 위젯의 기본 배경 색상
Color? cardColor, // Card 위젯의 배경 색상
Color? dividerColor, // Divider 위젯의 색상
Color? highlightColor, // 강조 색상 (InkWell 등에서 사용)
Color? splashColor, // 스플래시 색상 (InkWell 등에서 사용)
Color? selectedRowColor, // 선택된 행의 색상 (DataTable 등에서 사용)
Color? unselectedWidgetColor, // 선택되지 않은 위젯의 색상
Color? disabledColor, // 비활성화된 위젯의 색상
Color? buttonColor, // 버튼의 기본 배경 색상 (deprecated, 대신 TextButton, ElevatedButton, OutlinedButton 사용)
Color? secondaryHeaderColor, // 두 번째 헤더의 색상 (PaginatedDataTable 등에서 사용)
Color? textSelectionColor, // 텍스트 선택 색상 (deprecated, 대신 textSelectionTheme 사용)
Color? cursorColor, // 텍스트 필드의 커서 색상
Color? textSelectionHandleColor, // 텍스트 선택 핸들의 색상 (deprecated, 대신 textSelectionTheme 사용)
Color? dialogBackgroundColor, // 다이얼로그의 배경 색상
Color? indicatorColor, // TabBar의 인디케이터 색상
Color? hintColor, // 힌트 텍스트의 색상
Color? errorColor, // 오류 색상
Color? toggleableActiveColor, // 활성화된 토글의 색상 (Switch, Checkbox 등)
TextTheme? textTheme, // 기본 텍스트 스타일
TextTheme? primaryTextTheme, // 기본 텍스트 스타일 (primaryColor를 사용하는 텍스트)
TextTheme? accentTextTheme, // 강조 텍스트 스타일 (deprecated, 대신 colorScheme.secondary 사용)
InputDecorationTheme? inputDecorationTheme, // 입력 장식 테마 (TextField 등)
IconThemeData? iconTheme, // 기본 아이콘 테마
IconThemeData? primaryIconTheme, // 기본 아이콘 테마 (primaryColor를 사용하는 아이콘)
IconThemeData? accentIconTheme, // 강조 아이콘 테마 (deprecated, 대신 colorScheme.secondary 사용)
SliderThemeData? sliderTheme, // 슬라이더 테마
TabBarTheme? tabBarTheme, // 탭바 테마
TooltipThemeData? tooltipTheme, // 툴팁 테마
CardTheme? cardTheme, // 카드 테마
ChipThemeData? chipTheme, // 칩 테마
TargetPlatform? platform, // 타겟 플랫폼 (iOS, Android 등)
MaterialTapTargetSize? materialTapTargetSize, // 터치 타겟 크기
PageTransitionsTheme? pageTransitionsTheme, // 페이지 전환 테마
AppBarTheme? appBarTheme, // 앱바 테마
BottomAppBarTheme? bottomAppBarTheme, // 하단 앱바 테마
ColorScheme? colorScheme, // 색상 스키마
DialogTheme? dialogTheme, // 다이얼로그 테마
FloatingActionButtonThemeData? floatingActionButtonTheme, // 플로팅 액션 버튼 테마
NavigationRailThemeData? navigationRailTheme, // 네비게이션 레일 테마
Typography? typography, // 타이포그래피
NoDefaultCupertinoThemeData? cupertinoOverrideTheme, // Cupertino 테마 오버라이드
SnackBarThemeData? snackBarTheme, // 스낵바 테마
BottomSheetThemeData? bottomSheetTheme, // 바텀 시트 테마
PopupMenuThemeData? popupMenuTheme, // 팝업 메뉴 테마
BannerThemeData? bannerTheme, // 배너 테마
DividerThemeData? dividerTheme, // 디바이더 테마
ButtonBarThemeData? buttonBarTheme, // 버튼 바 테마
BottomNavigationBarThemeData? bottomNavigationBarTheme, // 하단 네비게이션 바 테마
TimePickerThemeData? timePickerTheme, // 시간 선택기 테마
TextButtonThemeData? textButtonTheme, // 텍스트 버튼 테마
ElevatedButtonThemeData? elevatedButtonTheme, // 엘리베이티드 버튼 테마
OutlinedButtonThemeData? outlinedButtonTheme, // 아웃라인 버튼 테마
TextSelectionThemeData? textSelectionTheme, // 텍스트 선택 테마
DataTableThemeData? dataTableTheme, // 데이터 테이블 테마
CheckboxThemeData? checkboxTheme, // 체크박스 테마
RadioThemeData? radioTheme, // 라디오 버튼 테마
SwitchThemeData? switchTheme, // 스위치 테마
ProgressIndicatorThemeData? progressIndicatorTheme, // 진행 표시기 테마
})
LIST