[Flutter] ThemeData()

2023. 9. 22. 22:31ยทWeb & Android/Flutter
๋ชฉ์ฐจ
  1. ์‚ฌ์šฉ๋ฒ•
  2. ์ ์šฉ ํ›„
  3. textTheme()
  4. ๋ฒ„ํŠผ ๋””์ž์ธ ๋ณ€๊ฒฝ - styleFrom()
  5. ํ•˜์œ„ ThemeData() ์ƒ์„ฑ
  6. ThemeData() ์•ˆ์˜ ํŠน์ • ์Šคํƒ€์ผ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ

๐Ÿ’ก ์Šคํƒ€์ผ์„ ๋„ฃ์„ ๋•Œ ์œ„์ ฏ๋งˆ๋‹ค ํ•˜๋‚˜ํ•˜๋‚˜ ์Šคํƒ€์ผ์„ ๋„ฃ์œผ๋ฉด ์ฝ”๋“œ๊ฐ€ ๋”๋Ÿฌ์›Œ์ง€๊ธฐ ๋•Œ๋ฌธ์— ThemaData() ์‚ฌ์šฉ

์‚ฌ์šฉ๋ฒ•

  • MaterialApp() ์•ˆ์— ThemeData() ์—ด๊ธฐ
MaterialApp(
theme : ThemeData(),
home : MyApp()
)

์ ์šฉ ํ›„

ThemeData(
iconTheme: IconThemeData(color: Colors.red, size: 60),
appBarTheme: AppBarTheme(
color: Colors.grey,
),
)
  • ๋ชจ๋“  ์•„์ด์ฝ˜ ๋นจ๊ฐ„์ƒ‰
  • AppBar ํšŒ์ƒ‰

โ†’ AppBar ์•ˆ์˜ actions: [] ์•„์ด์ฝ˜์— ๋นจ๊ฐ„์ƒ‰์œผ๋กœ ์ ์šฉ์ด ์•ˆ๋œ๋‹ค๋ฉด?

  • AppBarTheme() ์•ˆ์— ์•„์ด์ฝ˜ ์Šคํƒ€์ผ ์ง€์ •

textTheme()

  • Text() ์Šคํƒ€์ผ ๋ณ€๊ฒฝ โ†’ textTheme ์‚ฌ์šฉํ•˜๋ฉด ๋จ
ThemeData(
textTheme: TextTheme(
bodyText2: TextStyle(
color : Colors.blue,
),
),
)
  • textTheme ์•ˆ์—๋Š” headline1, headline2, bodyText1 ๋“ฑ์˜ ๊ธ€์ž ์Šคํƒ€์ผ ์ข…๋ฅ˜๊ฐ€ ์žˆ์Œ
  • Text ์œ„์ ฏ์€ bodyText2 ์‚ฌ์šฉ

๋ฒ„ํŠผ ๋””์ž์ธ ๋ณ€๊ฒฝ - styleFrom()

ThemeData(
textButtonTheme: TextButtonThemeData(
style: TextButton.styleFrom(
primary: Colors.black,
backgroundColor: Colors.orange,
)
),
)
  • styleFrom()์€ ButtonStyle() ์‚ฌ๋ณธ์„ ํ•˜๋‚˜ ์ƒ์„ฑํ•ด์ฃผ๋Š” ํ•จ์ˆ˜

ํ•˜์œ„ ThemeData() ์ƒ์„ฑ

  • ๋ ˆ์ด์•„์›ƒ ์ค‘๊ฐ„์— ThemeData() ํ•˜๋‚˜ ์ƒ์„ฑํ•˜๋ฉด ๋จ
Container(
child : Theme(
data : ThemeData(๊ธ€์ž ํŒŒ๋ž—๊ฒŒ ํ•˜๋Š” ์Šคํƒ€์ผ~~),
child : Container(
์—ฌ๊ธฐ๋ถ€ํ„ฐ๋Š” ๊ธ€์ž ํŒŒ๋ž˜์ง~~
)
)
)

 

ThemeData() ์•ˆ์˜ ํŠน์ • ์Šคํƒ€์ผ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ

Text('์•ˆ๋…•', style: Theme.of(context).textTheme.bodyText1)
  • Theme.of()๋Š” ์กฑ๋ณด๋ฅผ ํ•˜๋‚˜ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ์Œ
  • ์ด ์กฑ๋ณด์—์„œ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ThemeData()๋ฅผ ์ฐพ์•„์™€ ๊ฐ€์ ธ์™€์ฃผ๋Š” ํ•จ์ˆ˜
  • ์œ„์˜ ์˜ˆ์ œ๋Š” bodyText1์— ์ •์˜ํ•œ ์Šคํƒ€์ผ์„ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Œ
์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'Web & Android > Flutter' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Flutter] http ํŒจํ‚ค์ง€๋กœ GET ์š”์ฒญ  (0) 2023.09.22
[Flutter] ํŒŒ์ผ ๋ถ„๋ฆฌํ•˜๊ธฐ  (0) 2023.09.22
[Flutter] null check ํ•˜๋Š” ๋ฒ• & Android ์•ฑ ๋ฐœํ–‰  (1) 2023.09.12
[Flutter] ์‚ฌ์šฉ์ž ์—ฐ๋ฝ์ฒ˜ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ  (0) 2023.09.12
[Flutter] ๊ถŒํ•œ ํŒ์—… ์š”์ฒญ ๊ธฐ๋Šฅ  (0) 2023.09.12
  1. ์‚ฌ์šฉ๋ฒ•
  2. ์ ์šฉ ํ›„
  3. textTheme()
  4. ๋ฒ„ํŠผ ๋””์ž์ธ ๋ณ€๊ฒฝ - styleFrom()
  5. ํ•˜์œ„ ThemeData() ์ƒ์„ฑ
  6. ThemeData() ์•ˆ์˜ ํŠน์ • ์Šคํƒ€์ผ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ
'Web & Android/Flutter' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [Flutter] http ํŒจํ‚ค์ง€๋กœ GET ์š”์ฒญ
  • [Flutter] ํŒŒ์ผ ๋ถ„๋ฆฌํ•˜๊ธฐ
  • [Flutter] null check ํ•˜๋Š” ๋ฒ• & Android ์•ฑ ๋ฐœํ–‰
  • [Flutter] ์‚ฌ์šฉ์ž ์—ฐ๋ฝ์ฒ˜ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ
woojin._.
woojin._.
์—ฌ๋Ÿฌ๊ฐ€์ง€ ๊ฐœ๋ฐœ์„ ํ•ด๋ณด๋ฉฐ ๋ฐœ์ƒํ•˜๋Š” ์ด์•ผ๊ธฐ๋“ค์— ๋Œ€ํ•œ ๋ธ”๋กœ๊ทธ์ž…๋‹ˆ๋‹ค:)
  • woojin._.
    Jin's Dev Story
    woojin._.
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (829)
      • Tools (25)
        • eGovFrame (3)
        • GeoServer (3)
        • QGIS (2)
        • LabelImg (2)
        • Git (6)
        • GitHub (1)
        • Eclipse (7)
        • Visual Studio (1)
      • Web & Android (121)
        • SpringBoot (37)
        • Three.js (2)
        • Spring Data JPA (9)
        • ์Šคํ”„๋ง ๋ถ€ํŠธ ์‡ผํ•‘๋ชฐ ํ”„๋กœ์ ํŠธ with JPA (25)
        • Thymeleaf (4)
        • Spring Security (15)
        • Flutter (29)
      • Programming Language (61)
        • JAVA (27)
        • JavaScript (14)
        • Dart (2)
        • Python (15)
        • PHP (3)
      • Database (43)
        • PostgreSQL (32)
        • MYSQL (7)
        • Oracle (3)
        • MSSQL (1)
      • SERVER (17)
        • TCP_IP (3)
        • ๋ฆฌ๋ˆ…์Šค (7)
        • AWS (7)
      • Coding Test (445)
        • ๋ฐฑ์ค€[JAVA] (108)
        • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค[JAVA] (260)
        • ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ณ ๋“์  Kit[JAVA] (3)
        • SQL ๊ณ ๋“์  Kit[ORACLE] (74)
      • CS ์ง€์‹ (49)
        • [์ž๋ฃŒ๊ตฌ์กฐ] (14)
        • [๋„คํŠธ์›Œํฌ] (12)
        • [๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค] (10)
        • [์•Œ๊ณ ๋ฆฌ์ฆ˜] (9)
        • [์šด์˜์ฒด์ œ] (4)
      • ๊ธฐํƒ€ (6)
      • ์ž๊ฒฉ์ฆ & ๊ณต๋ถ€ (62)
        • ์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ (2)
        • SQLD (6)
        • ๋„คํŠธ์›Œํฌ๊ด€๋ฆฌ์‚ฌ 2๊ธ‰ (5)
        • ๋ฆฌ๋ˆ…์Šค๋งˆ์Šคํ„ฐ 1๊ธ‰ (44)
        • ๋ฆฌ๋ˆ…์Šค๋งˆ์Šคํ„ฐ 2๊ธ‰ (1)
        • ISTQB (3)
        • ์‹œ์Šคํ…œ๋ณด์•ˆ (1)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    programmers
    Oracle
    python
    ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
    ๋ฐ์ดํ„ฐ
    ๋ฐฑ์ค€
    ์Šคํ”„๋ง
    CS์ง€์‹
    ์Šคํ”„๋ง ๋ถ€ํŠธ ์‡ผํ•‘๋ชฐ ํ”„๋กœ์ ํŠธ with JPA
    backjoon
    ๋ฆฌ๋ˆ…์Šค
    spring
    Linux
    pcce ๊ธฐ์ถœ๋ฌธ์ œ
    postgresql
    ๋ฆฌ๋ˆ…์Šค๋งˆ์Šคํ„ฐ
    JPA
    springboot
    ์ž๋ฐ”
    baekjoon
    ๋ฆฌ๋ˆ…์Šค๋งˆ์Šคํ„ฐ 1๊ธ‰
    CS
    ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
    ์Šคํ”„๋ง๋ถ€ํŠธ
    ์‹œํ๋ฆฌํ‹ฐ
    Flutter
    Spring Security
    Java
    DB
    ํ”Œ๋Ÿฌํ„ฐ
  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.0
woojin._.
[Flutter] ThemeData()

๊ฐœ์ธ์ •๋ณด

  • ํ‹ฐ์Šคํ† ๋ฆฌ ํ™ˆ
  • ํฌ๋Ÿผ
  • ๋กœ๊ทธ์ธ
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”

๋‹จ์ถ•ํ‚ค

๋‚ด ๋ธ”๋กœ๊ทธ

๋‚ด ๋ธ”๋กœ๊ทธ - ๊ด€๋ฆฌ์ž ํ™ˆ ์ „ํ™˜
Q
Q
์ƒˆ ๊ธ€ ์“ฐ๊ธฐ
W
W

๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๊ธ€

๊ธ€ ์ˆ˜์ • (๊ถŒํ•œ ์žˆ๋Š” ๊ฒฝ์šฐ)
E
E
๋Œ“๊ธ€ ์˜์—ญ์œผ๋กœ ์ด๋™
C
C

๋ชจ๋“  ์˜์—ญ

์ด ํŽ˜์ด์ง€์˜ URL ๋ณต์‚ฌ
S
S
๋งจ ์œ„๋กœ ์ด๋™
T
T
ํ‹ฐ์Šคํ† ๋ฆฌ ํ™ˆ ์ด๋™
H
H
๋‹จ์ถ•ํ‚ค ์•ˆ๋‚ด
Shift + /
โ‡ง + /

* ๋‹จ์ถ•ํ‚ค๋Š” ํ•œ๊ธ€/์˜๋ฌธ ๋Œ€์†Œ๋ฌธ์ž๋กœ ์ด์šฉ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ํ‹ฐ์Šคํ† ๋ฆฌ ๊ธฐ๋ณธ ๋„๋ฉ”์ธ์—์„œ๋งŒ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.