2017-11-24 1 views
1

I vision.otf für Vermögenswerte/font und Haupt/font in meinem Projekt und setzen styles.xml alsWie Schriftarten für alle Seiten in einer Android-Anwendung App nutzen

folgt
<resources> 

    <!-- Base application theme. --> 
    <style name="AppTheme" parent="android:Theme.Material.Light"> 
     <!-- Customize your theme here. --> 
     <item name="colorPrimary">@color/colorPrimary</item> 
     <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
     <item name="colorAccent">@color/colorAccent</item> 
     <item name="android:fontFamily">@font/vision</item> 
     <item name="fontFamily">@font/vision</item> 
    </style> 


    <style name="MyTextField" parent="@android:style/TextAppearance"> 
     <item name="android:ems">10</item> 
     <item name="android:inputType">textPersonName</item> 
     <item name="android:background">@null</item> 
     <item name="android:textColor">@color/lightGrey</item> 
     <item name="android:textColorHint">@color/lightGrey</item> 
     <item name="android:backgroundTint">@color/lightGrey</item> 
     <item name="android:layout_alignParentTop">true</item> 
     <item name="android:layout_centerHorizontal">true</item> 
     <item name="android:ellipsize">start</item> 
     <item name="android:maxLines">1</item> 
     <item name="android:gravity">center</item> 

    </style> 



</resources> 

aber der Schriftstil angewendet haben kann sich bei der Ausführung überhaupt nicht ändern. Würden Sie mir bitte sagen, wie ich die Schriftfamilie außer Kraft setzen kann, ohne Objektklassen zu verwenden?

Antwort

1

Sie könnten Ihre Anwendungsklasse erweitern und die Standardschriftart dort einstellen.

Es gibt eine große Bibliothek für die gleiche namens Calligraphy, die einen Großteil Ihrer Arbeit in der erweiterten Klasse der Anwendung reduzieren wird und ich habe es seit langer Zeit verwendet.

Sie können dies nur tun: Schritt 1: Fügen Sie die Abhängigkeit

dependencies { 
compile 'uk.co.chrisjenx:calligraphy:2.3.0' 
} 

Schritt 2: Installation

@Override 
public void onCreate() { 
super.onCreate(); 
CalligraphyConfig.initDefault(new CalligraphyConfig.Builder() 
         .setDefaultFontPath("fonts/Roboto-RobotoRegular.ttf") 
         .setFontAttrId(R.attr.fontPath) 
         .build() 
     ); 
//.... 
} 

Dies wird die Schriftart Sie einfach den gesamten application.As wählen als Das!

Angenommen, Sie eine bestimmte Ansicht der Schriftart ändern müssen, können Sie dies tun:

einmal
<TextView 
android:text="@string/hello_world" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
fontPath="fonts/Roboto-Bold.ttf"/> 

Bitte gehen Sie durch die Bibliothek alle Details zu überprüfen, wie wie Sie Ihre Schrift Vermögen usw. zu organisieren, dann ist es eine wirklich handy one

Hoffe es hilft.

Verwandte Themen