Zu jedem Android-Gerät gehört eine Sammlung von Standardschriftarten: Droid Sans, Droid Sans Mono und Droid Serif. Sie wurden so konzipiert, dass sie für mobile Displays optimal sind. Dies sind also die drei Schriftarten, mit denen Sie die meiste Zeit arbeiten werden. Sie können mit einer Handvoll XML-Attributen gestaltet werden. Es kann jedoch vorkommen, dass Sie für spezielle Zwecke benutzerdefinierte Schriftarten verwenden müssen. Wir werden uns das auch in diesem kurzen Tipp ansehen.
Im folgenden Abschnitt werden die verschiedenen XML-Attribute untersucht, die Sie zum Gestalten von Komponenten mit Text verwenden können. Wenn Sie mitverfolgen möchten, richten Sie ein neues Android-Projekt in der IDE Ihrer Wahl ein und öffnen Sie Ihr main.xml Layoutdatei.
Wie in der Übersicht angegeben, gibt es drei verschiedene Standardschriftarten, die als Droid-Schriftfamilie bezeichnet werden: Sans, Monospace und Serif. Sie können einen beliebigen Wert als Wert für angeben android: schriftart Attribut in der XML-Deklaration einer Komponente, die Textstyling unterstützt, z. B. TextView. Hier ist ein Beispiel für alle drei in Aktion befindlichen Schriften:
Zusätzlich zu den obigen Angaben gibt es einen weiteren Attributwert namens "normal", der standardmäßig die sans-Schriftart verwendet.
Das android: textStyle Attribut kann verwendet werden, um Text hervorzuheben. Die möglichen Werte sind: normal, fett, kursiv. Sie können auch angeben fett | kursiv.
android: textSize gibt die Schriftgröße an. Sein Wert muss aus zwei Teilen bestehen: einer Fließkommazahl gefolgt von einer Einheit. Verfügbare Einheiten sind: sp (skalierte Pixel), px (Pixel), dp (dichteunabhängige Pixel), in (Zoll), mm (Millimeter). Es ist generell eine gute Praxis, die sp Einheit, so dass die Größe abhängig von den Benutzereinstellungen skaliert werden kann.
Das android: textColor Der Attributwert ist ein hexadezimaler RGB-Wert mit einem optionalen Alphakanal, ähnlich dem, was in gefunden wird CSS und kann in einem der folgenden Formate vorliegen:
Sie können auch eine Farbdeklaration mit verwenden @ color / color_name.
Sie können drei verschiedene Attribute verwenden, um das Erscheinungsbild Ihres Textschattens anzupassen:
Die Fließkommazahlen haben keine bestimmte Einheit - sie sind lediglich willkürliche Faktoren.
Als letztes werden wir die Verwendung von benutzerdefinierten Schriftarten untersuchen. Wir verwenden diese Schriftart zu Demonstrationszwecken. Laden Sie es herunter und platzieren Sie die TTF-Datei im Verzeichnis ./assets (erstellen Sie sie, falls noch nicht vorhanden)..
Wir werden eine grundlegende Layoutdatei mit einer TextView verwenden, die mit der ID "custom_font" gekennzeichnet ist, damit wir in unserem Code darauf zugreifen können.
Öffnen Sie Ihre Hauptaktivitätsdatei und fügen Sie diese in die onCreate () -Methode ein:
TextView txt = (TextView) findViewById (R.id.custom_font); Typeface font = Typeface.createFromAsset (getAssets (), "Chantelli_Antiqua.ttf"); txt.setTypeface (Schriftart);
Das Schrift Klasse enthält eine statische Builder-Methode createFromAsset, Dabei wird ein AssetManager als erster Parameter und ein Pfad zur Datei im zweiten Argument verwendet. Wir übergeben den Standard-Asset-Manager und den Namen der Zeichensatzdatei, da sie sich im Stammverzeichnis des Ordners "assets" befindet. Sobald wir eine Instanz unserer benutzerdefinierten Schriftart haben, bleibt nur noch ein Aufruf der setTypeface () - Methode von TextView. Einfach, oder? Es kann auch sinnvoll sein, Ihre Zeichensätze in einem Unterverzeichnis zu organisieren, wenn Ihr Assets-Verzeichnis mit anderen Dateien gepackt ist.
Es gibt jedoch einige potenzielle Probleme, die mit benutzerdefinierten Schriftarten einhergehen. Ellipsizing funktioniert möglicherweise nicht ordnungsgemäß, wenn die Schriftart keine Glyphe für das spezielle Ellipsenzeichen enthält und die Internationalisierung möglicherweise nicht unterstützt wird, da Ihre Schriftart mit der von den Benutzern eingegebenen Sprache umgehen muss. Sie sollten auch die Gesamtgröße Ihrer benutzerdefinierten Schriftarten im Auge behalten, da diese sehr groß werden kann, wenn Sie viele verschiedene Schriftarten verwenden.
Dieser schnelle Tipp zeigt Ihnen die verschiedenen Optionen, die Ihnen zum Anpassen der Standard-Droid-Schriftarten zur Verfügung stehen. Sie haben auch gelernt, wie Sie benutzerdefinierte Schriften in Ihre Anwendung integrieren und verwenden. Vergessen Sie nicht, sicherzustellen, dass jede benutzerdefinierte Schriftart, die Sie verwenden, eine Lizenz besitzt, die Ihnen die Erlaubnis erteilt, sie für diese Zwecke zu verwenden!