2016-11-19 15 views
0

こんにちはXamarinのナビゲーションバーでカスタムフォントを使用する方法を知りたいと思います。 XAMLでXamarin.FormsのカスタムフォントNavigationBar + ActionBar

このようなセットナビゲーションバーのプロパティを行うことが可能です:

<Style TargetType="NavigationPage"> 
     <Setter Property="BarBackgroundColor" Value="Pink"/> 
     <Setter Property="XXX"> 
      <Setter.Value> 
      <OnPlatform x:TypeArguments="x:String" 
       iOS="Kenyan Coffee" Android="kenyan coffee rg.ttf#Kenyan Coffee Rg" 
       WinPhone=""/> 
      </Setter.Value> 

     </Setter> 
</Style> 

私の問題は、私は、「フォントファミリー」や「ラベル」か何かのようなに関するドキュメントに何かを見つけることができないですそれ。

カスタムレンダリングを使用する必要があるかもしれないが、ナビゲーションバーのスタイルを変更するためにはどのクラスを置き換えなければならないのか分かりません。誰にもアイデアはありますか?

iOSのための単純な単純な方法があるようですが、私は両方のプラットフォームでそれを行うことができない限り、それをスタイルしたくありません。クロスプラットフォームのXamarin.Formsの方法は理想的ですが、動作するものはすべて問題ありません。

thisのようなチュートリアルでは、カスタムフォントについて語ると、アンドロイドのアクションバーを完全に無視するようです。

答えて

0

一般的に、カスタムフォントはApp.xamlでグローバルに設定できます。どうやらこれらの設定はツールバーには影響しません。

しかし、Androidのツールバーでは、Androidのstyle.xmlにスタイルを追加する必要があります。

<style name="Toolbar.TitleText" parent="TextAppearance.Widget.AppCompat.Toolbar.Title"> 
    <!--set your custom font properties--> 
    <item name="android:textSize">18sp</item> 
</style> 

そしてちょうどToolbar.xamlで参照:

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/toolbar" 
    android:layout_width="match_parent" 
    android:layout_height="?attr/actionBarSize" 
    android:minHeight="?attr/actionBarSize" 
    android:background="@color/primary" 
    android:theme="@style/MainTheme" 
    android:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
    app:titleTextAppearance="@style/Toolbar.TitleText" /> 
+0

おかげで多くのことを。私はこのポストから多くを学んだ。 xmlでこれを直接行うことができるかどうかはわかりませんが、この方法でxml経由でカスタムフォントを設定することはできないようです。 [Here](http://stackoverflow.com/questions/36472953/how-to-set-custom-font-in-xml-file-instead-of-java-file)は、まっすぐJavaでやっている例ですtextViewクラスを拡張します。アクションバーで同じことをするためにどのクラスを拡張する必要がありますか? – xerotolerant

+0

私はそれを得るとは思わない - アプリ全体のフォントを上書きすることはできるが、ツールバーのフォントは上書きすることはできない。私はあなたに厳密にそれをツールバーのために行う方法の例を挙げました。それはあなたのために働くのですか? – MadDeveloper

+0

それはフォントサイズを変更したという意味で働いていました。しかし、カスタムフォントファイルを使用するには、この ' kenyan coffee rg.ttf#Kenyan Coffee Rg'のように修正しましたが、うまくいきませんでした。 – xerotolerant