[Android] 언어별로 폰트 다르게 적용하기 (Apply custom fonts for each language)
2021. 6. 22. 15:20
styles.xml 폴더가 있는 경로에서 우클릭 > New > Values Resource Files
파일명 style, County code 선택후 >> 버튼 클릭
Mobile county code 입력 > OK (국가별 코드는 링크에서 확인 가능)
styles.xml 파일에 국가별로 적용할 font family 파일 작성 (style name은 통일)
<style name="AppTextViewStyle">
<item name="android:fontFamily">@font/font_family</item>
<item name="fontFamily">@font/font_family</item>
</style>
<style name="AppTextViewStyle">
<item name="android:fontFamily">@font/font_family_kor</item>
<item name="fontFamily">@font/font_family_kor</item>
</style>
앱 theme에 커스텀한 TextViewStyle 적용
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Base application theme. -->
<style name="Theme.App" parent="Theme.MaterialComponents.DayNight.NoActionBar">
...
<item name="android:textViewStyle">@style/AppTextViewStyle</item>
<item name="android:editTextStyle">@style/AppTextViewStyle</item>
<item name="android:buttonStyle">@style/AppTextViewStyle</item>
</style>
</resources>
이제 언어별로 다른 폰트가 적용된다.
- 숫자는 default style.xml 파일에 정의된 폰트를 따라감
- 특수문자는 직전에 사용된 폰트를 따르는듯
- (왜 서로 규칙이 다른건지;;)
'if (study) > Android' 카테고리의 다른 글
[Android] gradle groovy → kts 마이그레이션 템플릿 (0) | 2021.07.19 |
---|---|
[Android] MotionLayout 내부에서 visibility 변경이 안될 때 (0) | 2021.04.21 |
[Android/Kotlin] MapFragment in ScrollView 구현하기 (Cant scroll map vertically) (0) | 2021.03.08 |