Android:fontFamily에 대한 유효한 값과 매핑 대상은 무엇입니까?
이 질문에 대한 답변에서 사용자는 다음 값을 나열합니다.android:fontFamily및 12가지 변형 모델(아래 참조).이러한 가치관은 어디에서 오는 것일까요?다음에 대한 설명서android:fontFamily에는 이 정보가 나열되지 않습니다(여기와 여기를 확인했습니다).문자열은 Android styles.xml 파일의 다양한 위치에 나열되어 있지만 Roboto 글꼴로 다시 매핑하는 방법은 무엇입니까?
Android 4.1 / 4.2부터는 다음과 같은 Roboto 글꼴 제품군을 사용할 수 있습니다.
android:fontFamily="sans-serif" // roboto regular android:fontFamily="sans-serif-light" // roboto light android:fontFamily="sans-serif-condensed" // roboto condensed android:fontFamily="sans-serif-thin" // roboto thin (android 4.2) android:fontFamily="sans-serif-medium" // roboto medium (android 5.0)이것과 함께
android:textStyle="normal|bold|italic"12가지 변형이 가능합니다.
- 규칙적인.
- 이탤릭체
- 볼드
- 굵은 이탤릭체
- 빛
- 광이탤릭체
- 날씬해요.
- 얇은 이탤릭체
- 축약 정칙
- 축약 이탤릭체
- 굵은체 축약
- 굵은체-이탤릭체로 축약
에서styles.xml내가 작업 중인 응용 프로그램의 파일에 글꼴 계열로 나열되어 있는데, 나는 그것이 틀렸다고 확신합니다.
<item name="android:fontFamily">Roboto-Regular.ttf</item>
우리 앱의 테마를 올바르게 설정하고(글꼴 패밀리를 올바르게 사용하는 것 포함) 파일을 보기 전에 생성된 일부 스타일의 중복을 모두 제거하고 싶습니다.
이러한 가치관은 어디에서 오는 것일까요?Android:fontFamily에 대한 설명서에는 이 정보가 어디에도 나열되어 있지 않습니다.
이러한 항목은 설명서에 나와 있지 않습니다.그러나 이들은 'Font families' 섹션에 언급되어 있습니다.이 문서에는 Android Jelly Bean 4.1에 대한 모든 새로운 공개 API가 나열되어 있습니다.
내가 작업 중인 응용 프로그램의 styles.xml 파일에 이것을 글꼴 계열로 나열했는데, 나는 그것이 틀렸다고 확신합니다.
네, 그건 틀렸어요.당신은 폰트 파일을 참조하지 않고, 위 링크된 문서에 언급된 폰트 이름을 사용해야 합니다.이 경우에는 다음과 같아야 합니다.
<item name="android:fontFamily">sans-serif</item>
링크된 답변과 같이 12가지 변형이 가능합니다.
안드로이드 젤리빈(4.1)에 추가 - API 16:
일반(기본값):
<item name="android:fontFamily">sans-serif</item>
<item name="android:textStyle">normal</item>
기울임꼴:
<item name="android:fontFamily">sans-serif</item>
<item name="android:textStyle">italic</item>
굵게 표시:
<item name="android:fontFamily">sans-serif</item>
<item name="android:textStyle">bold</item>
굵은체-이탤릭체:
<item name="android:fontFamily">sans-serif</item>
<item name="android:textStyle">bold|italic</item>
조명:
<item name="android:fontFamily">sans-serif-light</item>
<item name="android:textStyle">normal</item>
가벼운 기울임꼴:
<item name="android:fontFamily">sans-serif-light</item>
<item name="android:textStyle">italic</item>
얇음:
<item name="android:fontFamily">sans-serif-thin</item>
<item name="android:textStyle">normal</item>
얇은 기울임꼴:
<item name="android:fontFamily">sans-serif-thin</item>
<item name="android:textStyle">italic</item>
축약 정규:
<item name="android:fontFamily">sans-serif-condensed</item>
<item name="android:textStyle">normal</item>
축약된 기울임꼴:
<item name="android:fontFamily">sans-serif-condensed</item>
<item name="android:textStyle">italic</item>
굵게 축약됨:
<item name="android:fontFamily">sans-serif-condensed</item>
<item name="android:textStyle">bold</item>
굵은 글씨로 축약:
<item name="android:fontFamily">sans-serif-condensed</item>
<item name="android:textStyle">bold|italic</item>
안드로이드 롤리팝(v5.0)에 추가 - API 21:
중간:
<item name="android:fontFamily">sans-serif-medium</item>
<item name="android:textStyle">normal</item>
중이탤릭체:
<item name="android:fontFamily">sans-serif-medium</item>
<item name="android:textStyle">italic</item>
검은색:
<item name="android:fontFamily">sans-serif-black</item>
<item name="android:textStyle">italic</item>
빠른 참조를 위해 다음과 같이 구성됩니다.

사용 가능한 글꼴(오레오 기준)
재료 설계 타이포그래피 페이지에는 이러한 글꼴 중 일부에 대한 데모와 글꼴 및 스타일 선택에 대한 제안이 있습니다.
코드 슬류스의 경우:는 Android 글꼴의 결정적이고 계속 확장되는 목록입니다.
이 글꼴 사용
을 합니다.android:fontFamily그리고.android:textStyle 예:
<!-- Roboto Bold -->
<TextView
android:fontFamily="sans-serif"
android:textStyle="bold" />
다음 표에서 원하는 값으로 이동합니다.
Font | android:fontFamily | android:textStyle
-------------------------|-----------------------------|-------------------
Roboto Thin | sans-serif-thin |
Roboto Light | sans-serif-light |
Roboto Regular | sans-serif |
Roboto Bold | sans-serif | bold
Roboto Medium | sans-serif-medium |
Roboto Black | sans-serif-black |
Roboto Condensed Light | sans-serif-condensed-light |
Roboto Condensed Regular | sans-serif-condensed |
Roboto Condensed Medium | sans-serif-condensed-medium |
Roboto Condensed Bold | sans-serif-condensed | bold
Noto Serif | serif |
Noto Serif Bold | serif | bold
Droid Sans Mono | monospace |
Cutive Mono | serif-monospace |
Coming Soon | casual |
Dancing Script | cursive |
Dancing Script Bold | cursive | bold
Carrois Gothic SC | sans-serif-smallcaps |
(Noto Sans는 폴백 글꼴이므로 직접 지정할 수 없습니다.)
참고: 이 표는 에서 파생되었습니다. 각 글꼴의 패밀리 이름과 스타일은 fonts.xml에 나열되어 있습니다.
<family name="serif-monospace">
<font weight="400" style="normal">CutiveMono.ttf</font>
</family>
serif-monospace따라서 글꼴 계열입니다.normal스타일입니다.
호환성.
fonts.xml 및 이전 system_fonts.xml의 로그를 기준으로 각 글꼴이 추가된 시기를 확인할 수 있습니다.
- 아이스크림 샌드위치: 로보토 레귤러, 볼드, 이탤릭, 볼드 이탤릭
- 젤리빈: 로보토 라이트, 라이트 이탤릭체, 콘덴서 볼드, 콘덴서 볼드, 콘덴서 볼드 이탤릭체 및 콘덴서 볼드 이탤릭체
- 젤리빈 MR1: 로봇 얇고 얇은 이탤릭체
- 롤리팝:
- Roboto 중간, 중간 기울임꼴, 검은색 및 검은색 기울임꼴
- Noto Serif 일반, 굵게, 기울임꼴, 굵게
- 큐티브 모노
- 커밍순
- 댄싱 스크립트
- 카로이스 고딕 SC
- 노토 산스
- 오레오 MR1: 로보토 응축 배지
제가 알기로는 xml이나 테마에서 사용자 정의 글꼴을 선언할 수 없습니다.저는 보통 인스턴스화 시 자체 글꼴을 설정하는 텍스트 보기를 확장하는 사용자 정의 클래스를 만들고 레이아웃 xml 파일에 있는 클래스를 사용합니다.
i:
public class Museo500TextView extends TextView {
public Museo500TextView(Context context, AttributeSet attrs) {
super(context, attrs);
this.setTypeface(Typeface.createFromAsset(context.getAssets(), "path/to/font.ttf"));
}
}
그리고.
<my.package.views.Museo900TextView
android:id="@+id/dialog_error_text_header"
android:layout_width="190dp"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:textSize="12sp" />
언급URL : https://stackoverflow.com/questions/19691530/valid-values-for-androidfontfamily-and-what-they-map-to
'programing' 카테고리의 다른 글
| 간헐적 ORA-22288 오류 - 명령 길이가 부정확함 (0) | 2023.09.05 |
|---|---|
| spring4.2.1, 최대 절전 모드5 통합 추상 메서드 오류 (0) | 2023.09.05 |
| 특정 코드가 추가된 커밋을 확인하는 방법은 무엇입니까? (0) | 2023.09.05 |
| 하이브리드 웹 애플리케이션(MPA 및 SPA 결합)을 사용하는 방법 (0) | 2023.09.05 |
| 안드로이드에서 전화가 시작될 때 앱을 시작하려면 어떻게 해야 합니까? (0) | 2023.09.05 |
