Resource String

๋ชจ๋ฐ”์ผ ๊ฐœ๋ฐœ์— ๋Œ€ํ•ด์„œ ์ง€์‹์ด ์ „๋ฌดํ•œ ์ƒํƒœ์ž…๋‹ˆ๋‹ค.

MAUI๋กœ Foreground Service ๊ฐœ๋ฐœํ•ด๋ณด๊ณ  ์‹ถ์€ ๊ฒƒ์ด ์žˆ์–ด ์ฐพ์•„๋ณด๋˜ ๋„์ค‘ Xamarin์˜ ์˜ˆ์ œ๋ฅผ ์นดํ”ผํ•ด์„œ ํ•˜๋ฉด ๊ทธ๋‚˜๋งˆ ์‰ฝ๋‹ค๊ณ  ๋“ค์—ˆ๋Š”๋ฐ,

์ œ๊ฐ€ Xamarin ์†Œ์Šค๋ฅผ ๋ณผ ์ค„ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

Resource.designer.cs์— Resource.String ํด๋ž˜์Šค๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

Resource.designer.cs๋Š” ์ด ์˜ˆ์ œ์†Œ์Šค๋ฅผ ๋งŒ๋“  ์‚ฌ๋žŒ์ด ๊ฐœ๋ฐœํ•œ ๊ฒƒ์€ ์•„๋‹ˆ๊ณ  Xamarin ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ ์‹œ ๋งŒ๋“ค์–ด ์ฃผ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด

image

์ด๋Ÿฐ ์‹์œผ๋กœ ์ƒ๊ฒผ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์„ ์•„๋ž˜ ์†Œ์Šค Resources.GetString(Resource.String.app_name)์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

image

์ด ํ”„๋กœ์ ํŠธ์˜ Main.axml์„ ๋ณด๋ฉด

image

์ด๋ ‡๊ฒŒ ์ƒ๊ธด ๊ฒƒ์œผ๋กœ ๋ด์„œ, ์ € ๋ฌธ์ž์—ด ๋ฆฌ์†Œ์Šค ํŒŒ์ผ์ด

image

์—ฌ๊ธฐ ๋ฌธ์ž์—ด์„ ๊ฐ€์ ธ๋‹ค ์“ฐ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ํ˜น์‹œ ์–ด๋–ค ์›๋ฆฌ๋กœ ๊ฐ€์ ธ๋‹ค ์จ์ง€๋Š” ๊ฒƒ์ธ์ง€ ์•Œ ์ˆ˜ ์žˆ์„๊นŒ์š”?

์ด๊ฒƒ์ด ๊ถ๊ธˆํ•˜๊ฒŒ ๋œ ์ด์œ ๋Š” ์•„๊นŒ ์œ„์˜ Resource.designer.cs ์—์„œ ์ด์ƒํ•œ ์ˆซ์ž ๊ฐ’์„ ๋Œ€์ž…ํ•˜๋Š”๋ฐ, ์ด ์ˆซ์ž๊ฐ€ ์–ด๋–ค ์˜๋ฏธ์ธ์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

์–ด๋–ป๊ฒŒ ๋ฌธ์ž์—ด ID๋ฅผ ๋ถ€์—ฌํ•˜๋Š” ๊ฒƒ์ธ์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.

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

์•„โ€ฆ Strings.xml ์— ๋ฌธ์ž์—ด์„ ์ถ”๊ฐ€ํ•˜๋‹ˆ๊นŒ ์•Œ์•„์„œ Resource.desinger.cs ๊ฐ€ ID๋ฅผ ๋ถ€์—ฌํ•ด์„œ ์—…๋ฐ์ดํŠธ ๋˜๋„ค์š”โ€ฆ^^;;

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

ํ•˜์ง€๋งŒ ์ด๊ฒƒ์€ Xamarin ์—์„œ ์ด๋ ‡๊ฒŒ ํ•˜๋Š” ๊ฒƒ ๊ฐ™๊ณ  MAUI์—์„œ๋Š” ๋‹ค๋ฅด๊ฒŒ ๊ฐ€๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

.NET Conf 2021์— ์˜ˆ์ œ๋กœ ๋‚˜์˜จ dotnet-potcasts MAUI Blazor ์†Œ์Šค๋ฅผ ๋ณด๋ฉด ๋ฆฌ์†Œ์Šค ํŒŒ์ผ(.resx)์„ ์‚ฌ์šฉํ•ด์„œ ๋ฌธ์ž์—ด ๋ฆฌ์†Œ์Šค๋ฅผ ๊ตฌ์„ฑํ•˜๋„๋ก ๋˜์–ด์žˆ์Šต๋‹ˆ๋‹ค.

Xamarin ๋•Œ๋ณด๋‹ค MAUI๊ฐ€ ์กฐ๊ธˆ ๋” C# ์Šคํƒ€์ผ์ด ๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

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