2017-06-14 45 views
1

我已經從fonts.google.com下載了一種字體,並且想爲我的Xamarin Forms應用程序中的所有標籤設置字體系列。所有標籤的自定義字體Xamarin Forms

添加以下代碼,所有的標籤似乎是工作過量

   <Label.FontFamily> 
         <OnPlatform x:TypeArguments="x:String"> 
         <OnPlatform.Android>Mogra-Regular.ttf#Mogra-Regular</OnPlatform.Android> 
        </OnPlatform> 
       </Label.FontFamily> 

理想我想設置在資源字典的字體家庭中,我已經成功設置了文字的顏色和字體屬性,但是,我這樣做沒有成功。

我設法使用自定義渲染器來更改字體系列,但是當我使用動態資源更改標籤文本顏色或字體屬性時,字體系列被重置爲默認值。

有沒有什麼辦法可以讓我普遍使用自定義字體,還可以動態更改任何給定標籤的其他方面?

+0

我們從標籤推導,並提出了自定義控件,使我們可以均勻設計橫跨應用程序。 – Digitalsa1nt

回答

3

在App.xaml中創建一個隱式樣式(無x:Key一個風格),它會被應用到所有Label小號

<Style TargetType="Label"> 
    <Setter Property="FontFamily"> 
    <Setter.Value> 
     <OnPlatform x:TypeArguments="x:String"> 
     <OnPlatform.Android>Mogra-Regular.ttf#Mogra-Regular</OnPlatform.Android> 
     </OnPlatform> 
    </Setter.Value> 
    </Setter> 
</Style> 
+0

啊! x:Key是爲什麼無法使它在資源字典中工作的原因。謝謝!雖然大膽的版本是一個單獨的ttf文件,但我不能簡單地將font屬性更改爲粗體,因此出現了一個新問題。任何解決這個問題的建議,還是我應該把它作爲一個新問題? –