Schneller Tipp Arbeiten mit benutzerdefinierten Schriftarten in Android O

Die erste Entwicklervorschau von Android O ist hier!

In dieser Serie betrachten wir einige der neuen UI-Funktionen, mit denen Sie heute über die Android O Developer Preview experimentieren können.

Im ersten Tipp habe ich Ihnen gezeigt, wie Sie Ihre Entwicklung einrichten, um diese frühe O-Vorschau zu unterstützen, und wie Sie Text erstellen, der automatisch skaliert und an die aktuelle Bildschirmkonfiguration angepasst wird. In diesem Tipp wird gezeigt, wie Android O die Arbeit mit benutzerdefinierten Schriftarten zu einem unkomplizierten Erlebnis macht.

Hinzufügen von benutzerdefinierten Schriftarten zu Ihrem Projekt

Wollten Sie schon immer einen bestimmten Text hervorheben? Oder vielleicht waren Sie überzeugt, dass eine benutzerdefinierte Schriftart der perfekte Weg ist, um Ihrer Anwendung eine zusätzliche Persönlichkeit zu verleihen?

Die Verwendung von benutzerdefinierten Schriftarten bietet viele Vorteile. Die Verwendung von Android-Schriften ist jedoch traditionell eine schmerzhafte Erfahrung, bei der Sie entweder eine Bibliothek verwenden oder einen benutzerdefinierten Namen erstellen müssen Aussicht

Glücklicherweise wird das Arbeiten mit benutzerdefinierten Schriftarten in Android viel einfacher. Die benutzerdefinierten Schriftarten werden in Android O zu einem vollständig unterstützten Ressourcentyp. Dies bedeutet, dass das Hinzufügen einer benutzerdefinierten Schriftart zu Ihrer App so einfach ist wie das Hinzufügen anderer Ressourcen wie Bilder und Text.

Um mit diesem Tutorial fortzufahren, benötigen Sie einige Zeichensatzdateien, die Sie dem in Teil 1 erstellten Android O-Projekt hinzufügen können.

Android O unterstützt beides .otf (OpenType) und .ttf (TrueType) -Formate. Es gibt viele Websites, die diese Art von Schriftarten kostenlos anbieten. Suchen Sie also ein paar Minuten bei Google, bis Sie die gewünschte Schrift gefunden haben.

Da wir gerade mit den neuen Funktionen von Android O experimentieren, spielt es keine Rolle, welche Schriftart Sie verwenden. Wenn Sie jedoch nach Zeichensätzen suchen, die in Produktionsversionen Ihrer App verwendet werden sollen, sollten Sie dies tun immer Überprüfen Sie die Allgemeinen Geschäftsbedingungen dieser Schriftart. Nur weil eine Ressource kostenlos zum Download zur Verfügung steht, bedeutet dies nicht automatisch, dass Sie keine Einschränkungen hinsichtlich der Verwendung und Weitergabe dieser Ressource haben. Überprüfen Sie daher immer das Kleingedruckte!

Sie sollten auch den Zweck, den Inhalt und die Zielgruppe Ihrer Anwendung berücksichtigen, da unterschiedliche Schriftarten unterschiedliche Meldungen enthalten. Wenn Sie eine App entwerfen, die den Nutzern hilft, ihre Steuererklärungen auszufüllen, kann es schwierig sein, den finanziellen und rechtlichen Rat Ihrer App ernst zu nehmen, wenn sie in einer seltsamen und verrückten Schrift bereitgestellt wird!

Sobald Sie eine Schriftart gefunden haben, mit der Sie arbeiten möchten, laden Sie sie herunter und entpacken Sie sie. An dieser Stelle sollten Sie den Dateinamen der Schriftart auf ungültige Zeichen überprüfen. Dies ist im Wesentlichen alles, was nicht in Kleinbuchstaben von a-z, 0-9 oder einem Unterstrich steht. Versuchen Sie, andere Zeichen einzufügen, und Android Studio gibt einen Fehler aus, sobald Sie versuchen, auf diese Ressource zu verweisen.  

Sobald Sie Ihre Zeichensatzdatei (en) erworben haben, müssen Sie sie irgendwo speichern:

  • Klicken Sie mit der rechten Maustaste auf Ihr Projekt App / Res Ordner und wählen Sie Neu> Android-Ressourcenverzeichnis.
  • Öffnen Sie das Dropdown-Menü und wählen Sie Schriftart.
  • Eingeben Schriftart als die Dateiname.
  • Klicken OK.
  • Ziehen Sie Ihre Schriftartdatei (en) in Ihre neue res / font Mappe.

Eigene Schriftarten verwenden

Sie können eine benutzerdefinierte Schriftart mit dem neuen Text auf Ihren Text anwenden android: fontFamily XML-Attribut:

Sie können auch zu allen in Ihrer App erstellten Stilen benutzerdefinierte Schriftarten hinzufügen:

Wenn Sie benutzerdefinierte Schriftarten programmgesteuert verwenden möchten, können Sie eine benutzerdefinierte Schrift mit der getFont (int) Methode zum Beispiel:

import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.LinearLayout; import android.widget.TextView; import android.widget.LinearLayout.LayoutParams; import android.graphics.Typeface; public class MainActivity erweitert AppCompatActivity @Override protected void onCreate (Bundle savedInstanceState) super.onCreate (savedInstanceState); LinearLayout linearLayout = new LinearLayout (this); TextView ProgrammATICTextView = new TextView (this); ProgrammATICTextView.setText ("Dies ist etwas Text"); // Verweise auf die benutzerdefinierte Schriftart // Typeface typeface = getResources (). GetFont (R.font.doublefeature); ProgrammATICTextView.setTypeface (Schriftbild); linearLayout.addView (ProgrammicallyTextView); this.setContentView (linearLayout, neues LinearLayout.LayoutParams (LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)); 

Erstellen einer Schriftfamilie

Manchmal entpacken Sie möglicherweise einen Zeichensatzordner und entdecken mehrere Versionen derselben Schriftart, z. B. eine kursive Version oder Schriftarten mit unterschiedlichen Gewichten und Stärken.

Wenn Sie mehrere Versionen derselben Schriftart verwenden, möchten Sie sie möglicherweise zu einer Schriftfamilie zusammenfassen. Eine Schriftfamilie ist im Wesentlichen eine dedizierte XML-Datei, in der Sie jede Version der Schriftart sowie die zugehörigen Stil- und Gewichtsattribute definieren.

So erstellen Sie eine Schriftfamilie:

  • Stellen Sie sicher, dass Sie alle Schriftdateien zu Ihren Projekten hinzugefügt haben res / font Mappe.
  • Klicken Sie mit der rechten Maustaste auf Ihr Projekt res / font Ordner und wählen Sie dann Neu> Schriftartressourcendatei.
  • Geben Sie dieser Datei einen Namen und klicken Sie auf OK.
  • Öffnen Sie diese XML-Datei und definieren Sie alle verschiedenen Versionen dieser Schriftart sowie deren Stil- und Gewichtsattribute. Beispiel:
 http://schemas.android.com/apk/res/android ">    

Sie können dann auf alle Zeichensätze in dieser Familie mit dem verweisen android: fontFamily Attribut. Zum Beispiel:

android: fontFamily = "@ font / doublefeature_bold"

Vergiss nicht zu testen!

Die neuen Funktionen lassen sich leicht mitreißen, aber benutzerdefinierte Schriften sollten Sie nicht übertreiben! Konsistente Benutzeroberflächen sind einfacher zu navigieren und zu verstehen. Wenn Ihre App ständig zwischen den Zeichensätzen wechselt, müssen Ihre Benutzer möglicherweise mehr Aufmerksamkeit darauf legen, wie Ihr Text aussieht sieht aus, anstatt was es ist sagt.

Wenn Sie benutzerdefinierte Schriftarten in Ihr Projekt einbinden, ist es wichtig zu testen, wie diese Schriftart in einer Vielzahl verschiedener Bildschirmkonfigurationen dargestellt wird, da Ihre oberste Priorität immer darin bestehen sollte, dass Ihr Text gut lesbar ist.

Fazit

In diesem Tipp habe ich Ihnen gezeigt, wie Sie stilvolleren und einzigartigeren Text erstellen, indem Sie Ihren Projekten benutzerdefinierte Schriftarten hinzufügen. Im letzten Beitrag dieser Serie verschieben wir unseren Fokus von Text auf Bilder. Ich zeige Ihnen, wie Sie adaptive Launcher-Symbole erstellen, die ihre Form automatisch an das aktuelle Gerät anpassen.

In der Zwischenzeit finden Sie einige unserer anderen Tutorials zur Entwicklung von Android-Apps!