2017-05-20 5 views

답변

2

여기에는 플랫폼 간 '기본 글꼴 패밀리'가 없기 때문에 올바른 방법이 없습니다. 플랫폼 별 플랫폼이기도합니다. Label에 대한 소스 코드에 정의 된

은이 속성을 참조하고 싶은, 더이 상 정교합니다

FontElement에 정의 된대로 차례로 종속성 속성을 의미
public static readonly BindableProperty FontFamilyProperty = FontElement.FontFamilyProperty; 

,

public static readonly BindableProperty FontFamilyProperty = 
     BindableProperty.Create("FontFamily", typeof(string), typeof(IFontElement), default(string), 
           propertyChanged: OnFontFamilyChanged); 

또는 참조한 정적 메소드 SystemFontOfSize.

public static Font SystemFontOfSize(NamedSize size) 
{ 
    var result = new Font { NamedSize = size }; 
    return result; 
} 

당신이 볼 수 있듯이, 두 경우 모두, FontFamily의 값 'null', 소스 코드에 따라 예기치 못한 없습니다. (제 1 경우에, 종속성 속성 null로 변환 default(string) 같은 기본 값으로 정의하고, 두 번째 경우 FontFamily 대한 값이 설정되지 않는다) 같은

Font.Default 간다. 더 파고에, 당신은 다음과 같이 정의된다 IsDefault 건너 : null입니다

public bool IsDefault 
{ 
    get { return FontFamily == null && FontSize == 0 && NamedSize == NamedSize.Default && FontAttributes == FontAttributes.None; } 
} 

그래서 FontFamily 경우, 그것은 자 마린 형태 에코 시스템의 기본입니다. 그 FontFamily 속성이 구체적으로 어떤 값으로 'null'에서 수정 한 후 않는 Label이 특정 플랫폼에 렌더링됩니까


은, 네이티브 컨트롤의 글꼴 속성 중 하나를 수정되지 않습니다. 따라서 네이티브 컨트롤은 해당 플랫폼에 대한 기본 글꼴 패밀리로 렌더링됩니다.

기본 글꼴을 얻으려면 해당 값을 얻으려면 implement native-services, and use dependency-injection해야합니다.

Label에 사용되는 기본 컨트롤에 대한 자세한 내용은 link을 참조하십시오.