Vincent MAUI - slog

MAUI ๋ฅผ ํ•™์Šตํ•˜๋ฉด์„œ ๋ฉ”๋ชจํ•  ๊ฒƒ๋“ค์„ ์ ์Šต๋‹ˆ๋‹ค.

5๊ฐœ์˜ ์ข‹์•„์š”

ํ”„๋กœ์ ํŠธ์— svg ํŒŒ์ผ๋งŒ ์ฐธ์กฐ๋˜์–ด ์žˆ๊ณ , XAML๊ณผ C#์—์„œ๋Š” ๊ฐ™์€ ์ด๋ฆ„ ํŒŒ์ผ์˜ png๋ฅผ ์ฐธ์กฐํ•˜๊ณ  ์žˆ์–ด์„œ MSDN์„ ํ™•์ธ.

image

์œ„ ๊ทธ๋ฆผ์˜ ์„ค๋ช…์ฒ˜๋Ÿผ MAUI๋Š” svg ํŒŒ์ผ์„ ํ”„๋กœ์ ํŠธ ์ถ”๊ฐ€ํ•˜๋ฉด ๋นŒ๋“œํ•  ๋•Œ obj ํด๋” ์•„๋ž˜์— png ํŒŒ์ผ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ์ด๊ฒƒ์„ ๋Ÿฐํƒ€์ž„์—์„œ ์ฐธ์กฐํ•œ๋‹ค๊ณ  ํ•จ.

๋”ฐ๋ผ์„œ ๋Ÿฐํƒ€์ž„์—์„œ ๋™์ž‘์‹œํ‚ฌ XAML ๊ณผ C# ์ฝ”๋“œ๋“ค์€ ๊ฐ™์€ ์ด๋ฆ„์˜ svg ํŒŒ์ผ์„ png๋กœ ์ฐธ์กฐํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๊ณ  ์‚ฌ์šฉํ•  ๊ฒƒ.

๋˜ํ•œ ์•ˆ๋“œ๋กœ์ด๋“œ ๊ถŒ์žฅ์— ๋”ฐ๋ผ ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ด๋ฆ„์€ ์˜์†Œ๋ฌธ์ž, ์ˆซ์ž, ์–ธ๋”๋ฐ” ๋กœ๋งŒ ๊ตฌ์„ฑํ•ด์•ผ ํ•จ.

image

2๊ฐœ์˜ ์ข‹์•„์š”

MAUI์—์„œ ๋ฌธ์ž์—ด ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ์•„๋ž˜ ๋ฐฉ์‹์„ ์ด์šฉ

2๊ฐœ์˜ ์ข‹์•„์š”

์•ˆ๋“œ๋กœ์ด๋“œ ์˜ˆ์ œ๋ฅผ ๋ณด๋‹ค ๋ณด๋ฉด Intent, Bundle๋ฅผ ํ†ตํ•ด View ๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•œ๋‹ค.

  • Intent: Activity ๊ฐ„ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ์„ ์œ„ํ•ด ์‚ฌ์šฉ
  • Bundle: ํ•˜๋‚˜์˜ Activity ์•ˆ์—์„œ Fragment๊ฐ„ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ์„ ์œ„ํ•ด ์‚ฌ์šฉ

๋‘˜ ๋‹ค ๋ฐ์ดํ„ฐ๋ฅผ ํฌ์žฅํ•˜๋Š” parcel์˜ ๊ฐœ๋…์ด๊ธฐ ๋•Œ๋ฌธ์— MAUI์—์„œ CommunityToolkit ๋“ฑ์˜ MVVM ๋ฐฉ์‹์œผ๋กœ ๋ฐ”์ธ๋”ฉ, EventAggregator ๋ฐฉ์‹์œผ๋กœ ๋Œ€์ฒด ๊ฐ€๋Šฅํ•˜๋‹ค.

๋ฌผ๋ก โ€ฆAndroid Native ๊ธฐ๋Šฅ์„ ์ด์šฉํ•˜๋Š” ๊ฒฝ์šฐ์— Intent, Bundle์„ ๋ฐ˜๋“œ์‹œ ์ด์šฉํ•˜๋„๋ก ๋˜์–ด์žˆ๋‹ค๋ฉด ๋„ค์ดํ‹ฐ๋ธŒ๋‹จ์˜ ์ฝ”๋”ฉ์—์„œ ์‚ฌ์šฉํ•˜๊ธด ํ•ด์•ผํ•œ๋‹ค.
๋‹จ์ง€ 'View ๊ฐ„ ๋ฐ์ดํ„ฐ ์ „๋‹ฌโ€™์„ ์œ„ํ•ด Intent๋‚˜ Bundle์„ ์“ฐ์ง€ ์•Š์•„๋„ ๋œ๋‹ค๋Š” ๊ฒƒ์ด๊ณ , ๋„ค์ดํ‹ฐ๋ธŒ ๋‹จ์—์„œ ๊ฐœ๋ฐœํ•  ๋•Œ๋Š” ํ•„์š”ํ•˜๋‹ค.

MAUI ์•ˆ๋“œ๋กœ์ด๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์†Œ์Šค ๋ถ€๋ถ„์—์„œ Intent Bundle์ด ๋ฐœ๊ฒฌ๋œ๋‹ค๋ฉด, MAUI์˜ ๊ณตํ†ต UI ์ž‘์—…์—์„œ MVVM์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ์ถ”ํ›„ MAUI ์ ์œผ๋กœ์„œ์˜ ์œ ์ง€๋ณด์ˆ˜๋‚˜, ๋‹ค๋ฅธ ํ”Œ๋žซํผ(iOS, mac-catalyst)์œผ๋กœ ํ™•์žฅ์— ์šฉ์ดํ•˜๋‹ค.

Android Intent, Android Bundle์— ๋Œ€ํ•œ ์ž๋ฃŒ ์ •๋ฆฌ ๋„์›€ : @aroooong

3๊ฐœ์˜ ์ข‹์•„์š”

MAUI ์—์„œ CommunityToolkit.Maui ์—๋Š” ์•„์ง Messenger๊ฐ€ ๊ฐœ๋ฐœ๋˜์ง€ ์•Š์•˜๋‹ค.

๋”ฐ๋ผ์„œ MAUI MessagingCenter๋ฅผ ์ด์šฉํ•ด์•ผ ํ•œ๋‹ค.

3๊ฐœ์˜ ์ข‹์•„์š”