Roboto - Google Fonts
여기 구글 폰트에서 noto_sans 폰트를 받아서 일괄적용했습니다.
그런데 적용하고 실행시켜보니 폰트크기가 커져 뷰들이 커지고 사이즈가 고정되어있는 뷰들은
텍스트가 잘리는 현상까지 발생하는데요. 원래이런건가요?
링크 들어가보시면 폰트가 40px가 고정이고 바꿔 다운받을수도 있고그러던데
제가 여러 사이즈로 바꿔서 해봐도 이전과 똑같은걸보니 링크의 폰트사이즈는 영향이없고
폰트자체 영향인걸로 파악이 되는데요..
바꾼 폰트 자체가 크다보니 텍스트 사이즈를 새로 지정할때도 조금 곤란해지네요.
그리고 원래 컸다보니 텍스트 사이즈를 줄여도 텍스트사이즈는 줄어도는데 뷰크기가 상대적으로
안줄어들기도 하고 이런현상이 발생하네요..
제가 여태 코딩하면서 사용하던 사이즈들 예를들어 24dp면 이정도 사이즈는 되겠다 하는
사이즈들이 전혀 다르니 난감합니다.
원래 이런건가요?
+) 그리고 번외 질문입니다
<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:fontSize="http://schemas.android.com/tools">
<!-- app: 네임스페이스를 사용하는 이유는 api 레벨 26미만에서도 이 파일을 사용하기 위함 -->
<!-- Font Resource File.xml은 api 레벨 26이상에서 사용가능 함 -->
<!-- thin -->
<font
android:font="@font/noto_sans_kr_thin"
android:fontStyle="normal"
android:fontWeight="100"
app:font="@font/noto_sans_kr_thin"
app:fontStyle="normal"
app:fontWeight="100"/>
<!-- light -->
<font
android:font="@font/noto_sans_kr_light"
android:fontStyle="normal"
android:fontWeight="300"
app:font="@font/noto_sans_kr_light"
app:fontStyle="normal"
app:fontWeight="300"/>
<font
android:font="@font/noto_sans_kr_black"
android:fontStyle="normal"
android:fontWeight="900"
app:font="@font/noto_sans_kr_black"
app:fontStyle="italic"
app:fontWeight="900" />
</font-family>
폰트를 일괄적용하려고 이러한 noto_sans_font_family.xml파일을 만들었습니다. 그리고
themes.xml ( 구 styles.xml)에서 이러한 코드를 작성했는데요
<resources xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Base application theme. -->
<style name="Theme.WriteWeight" parent="Theme.MaterialComponents.DayNight.NoActionBar">
<!-- Primary brand color. -->
<item name="colorPrimary">@color/purple_500</item>
<item name="colorPrimaryVariant">@color/light_green_dark</item>
<item name="colorOnPrimary">@color/white</item>
<!-- Secondary brand color. -->
<item name="colorSecondary">@color/teal_200</item>
<item name="colorSecondaryVariant">@color/teal_700</item>
<item name="colorOnSecondary">@color/black</item>
<!-- Status bar color. -->
<item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item>
<!-- Customize your theme here. -->
<!-- 폰트 일괄 적용 -->
<item name="android:textViewStyle">@style/TextViewFont</item>
</style>
<style name="TextViewFont" parent="@android:style/Widget.DeviceDefault.TextView">
<item name="android:fontFamily">@font/noto_sans_kr_light</item>
</style>
</resources>
여기서 궁금한게 마지막 style 태그에서 @font/ 면 font폴드의 하위폴더를 의미하는 것일텐데요..
font 폴더 아래 noto_sans_kr_light.otf 파일을 의미하는거잖아요..?
그럼 여기서 제가 정의한 xml파일 내의 font 태그들은 무슨 의미가 되냐 이게 궁금합니다...
일괄적용방법을 찾다가 샘플코드들을 보니 @font/noto_sans_font_family 이런식으로 한번에
정의해놨던데 당최 이해가 안가더라구요.. fontWeight가 폰트 굵기라는데 적용도 안되고..
@font/noto_sans_font_family로 지정해준다하더라도 저 스타일이 이 xml파일안에서 어떤 폰트를
사용할지 모르는데 어떤식으로 되는건가요?