2017-12-29 8 views
0

私のアプリケーションではSupport Library 27.0.2経由でAndroidダウンロードフォントを使用して、API Guide on Android DevelopersのようにXMLでカスタムフォントを設定します。フォントは、各フォントファミリが初めてスクリーンに描画されるときを除いて、通常どおり適用されます。例えばダウンロード可能なフォントが正しくキャッシュされない

:私はActivityAを開いた場合、そのToolbarはデフォルトRobotoとTab1タイトルが表示されますが、Tab2Tab3は私のカスタムフォントを使用します。 2回目のActivityAが開かれても(アプリケーションを終了することなく)、問題は発生せず、すべてのタブでカスタムフォントが使用されます。 Tabのタイトルのほかに、私はツールバーの問題にも気づいた。これは同じケースです。最初に開いた後、フォントが正しく適用されます。

res/values/font_certs.xmlres/font/font.xmlファイルは、Android Studioで生成され、ただマニュアルに記載されているもののようなものですした。

<application ...> 
    <meta-data 
     android:name="preloaded_fonts" 
     android:resource="@array/preloaded_fonts" /> 
</application> 

そしてres/values/arrays.xml

<resources> 
    <array name="preloaded_fonts"> 
     <item>@font/lato</item> 
     <item>@font/lato_bold</item> 
     <item>@font/lato_light</item> 
     <item>@font/raleway</item> 
     <item>@font/raleway_semibold</item> 
    </array> 
</resources> 
ここ

<font-family xmlns:app="http://schemas.android.com/apk/res-auto" 
    app:fontProviderAuthority="com.google.android.gms.fonts" 
    app:fontProviderCerts="@array/com_google_android_gms_fonts_certs" 
    app:fontProviderPackage="com.google.android.gms" 
    app:fontProviderQuery="Lato" /> 

マニフェストです

フォントが適用されていますAppBarLayoutで次のテーマを使用して:

<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" > 
    <item name="android:fontFamily">@font/raleway</item> 
    <item name="android:gravity">center_horizontal</item> 
</style> 

プロジェクトは、以下のバージョンを使用しています。問題は、API 21および27は、のように思える本当のネクサス6P実行されているAPIにAVD使用して再現した

minSdkVersion = 19 
targetSdkVersion = 26 
compileSdkVersion = 26 
buildToolsVersion = '27.0.0' 
playServicesVersion = '11.6.0' 

フォントキャッシュに問題があります。それを修正したり、この問題をよりよく調査するにはどうすればよいですか?

+0

これはおそらく少しお手伝いします:https://medium.com/@romainguy/androids-font-renderer-c368bbde87d9 – Danieboy

答えて

0

これまでのところ、オフラインフォントを使用する以外にこの問題を解決する方法が見つかりませんでした。この場合、font.xmlファイルをGoogleフォントからダウンロードしたfont.ttfファイルに置き換え、マニフェストのpreloaded_fontsメタタグを削除しました。これにより、APKサイズ(5フォント分)が約200KB増加しました。

関連する問題