Schriftart in XML mit Android O

8

Android O geben Sie font-Verzeichnis mit neuen Android-Studio-Version 3.0, aber wenn in Font-Datei in Font-Verzeichnis und Projekt führen Sie es geben Sie einen Fehler in der Schriftart-Datei in Font-Verzeichnis. Fehler: Ausführung fehlgeschlagen für Task ': app: mergeDebugResources'.

  

/home/ttuser4/Downloads/fontPractice/app/src/main/res/font/Dancing_Script.ttf: Fehler: Der Dateiname muss mit .xml enden

    
Akshaykumar Singh 15.06.2017, 07:09
quelle

4 Antworten

12

Ich habe auch das ähnliche Problem. Um das zu beheben, befolgte ich die folgenden Schritte.

  1. Aktualisiert Android Studio auf den neuesten kanarischen Build.
  2. Ändern Sie distributionUrl in project-dir/gradle/gradle-wrapper.properties auf die neueste Verteilerverteilungs-URL (Sie können die neueste Verfügbarkeit von Gradle von hier abrufen ), um die Graplel-Version zu aktualisieren, die wie folgt erstellt wurde.
      

    distributionUrl = https: //services.gradle.org/distributions/gradle-4.1-milestone-1-all.zip

  3. Aktualisieren Sie dann com.android.tools.build:gradle version im root build.gradle auf den neuesten Stand wie unten. (Hinweis: Die unten angegebene Version ist die neueste, wenn die Antwort gepostet wird. Die Version könnte sich in Zukunft ändern. Passen Sie also auf.)
%Vor%
  1. Synchronisieren, bereinigen und aktualisieren Sie das Projekt.

Es hat für mich funktioniert. Lassen Sie mich mit Ihren Kommentaren wissen.

    
Mahendran Sakkarai 28.06.2017 11:32
quelle
2

Ich gehe davon aus, dass Sie ein älteres Build-Tool-Plug-in verwenden, so dass es nicht über res / font und die neuen Font-Funktionen bekannt ist.

Ich hatte das gleiche Problem, das ich auf die Build-Tools 2.4.0-alpha7 update

aber ich bekam eine Fehlermeldung beim Build und musste dann die Umgebungsvariable

setzen %Vor%     
Greg McGowan 15.06.2017 20:51
quelle
0

Angenommen, Sie haben Ihr Android Studio-Projekt geöffnet.

  1. Klicken Sie mit der rechten Maustaste auf res und wählen Sie New > Android Resource Directory .

  2. Wählen Sie das Ressourcenverzeichnis "font".

  1. Ändern Sie den Namen Ihrer Schriftart in "dancing.ttf" (große Namen erzeugen einen Fehler). Ich habe "Pacifico-Font" verwendet und folgende Fehlermeldung erhalten:
  

Fehler: Ausführung fehlgeschlagen für Task ': app: mergeDebugResources'.       res / font / Pacifico-Font.ttf: Fehler: 'P' ist kein gültiges dateibasiertes Ressourcennamenszeichen: Dateibasierte Ressourcennamen dürfen nur enthalten   Kleinbuchstaben a-z, 0-9 oder Unterstrich

Wenn ich es in pacifico.ttf geändert habe, hat es funktioniert.

  1. Fügen Sie die Schriftart zum Schriftartenordner hinzu.
  2. Führen Sie Ihre App aus.

Ich habe die gleichen Schritte in der Android Studio 3.0-Vorschau mit der Schriftart "pacifico.ttf" verfolgt, und es funktioniert für mich.

Falls Fehler auftreten, säubern Sie das Projekt einmal und führen Sie es dann erneut aus.

Sagen Sie mir Bescheid, wenn Sie immer noch auf Probleme stoßen.

    
Kunal Chawla 15.06.2017 07:34
quelle
-2

Sie können eine Schriftart in einem beliebigen Format hinzufügen, aber Sie müssen eine Font Family xml-Datei erstellen, um diese Schriftarten in der XML-Layoutdatei anzuwenden. Eine Schriftfamilie ist eine XML-Datei, die mehrere Schriftdateien zusammen mit ihren Format- und Gewichtdetails enthält. Sie können auf die Schriftfamilie als eine Einheit zugreifen.

Führen Sie die folgenden Schritte in Android Studio aus, um eine Schriftfamilie zu erstellen:

  1. Klicken Sie mit der rechten Maustaste auf den Schriftartenordner und gehen Sie zu Neu & gt; Schriftart-Ressourcendatei Das Fenster Neue Ressourcendatei wird angezeigt.

  2. Geben Sie den Dateinamen ein und klicken Sie dann auf OK. Die neue Schriftart-Ressource XML wird im Editor geöffnet.

  3. Schließen Sie jede Schriftartdatei, jeden Stil und jedes Gewichtungsattribut in das Element ein. Das folgende XML veranschaulicht das Hinzufügen schriftattribuierter Attribute in der Schriftartenressource XML:

    %Vor%

Dann können Sie diese Schriftfamilie zu jedem Element im Layout hinzufügen, das Text enthält. Wie in diesem Beispiel gilt es für TextView ,

%Vor%     
jack jay 15.06.2017 07:29
quelle