Gibt es eine vom Benutzer zugängliche Schriftgrößeneinstellung?

7

Ich möchte die Schriftgröße im gesamten Betriebssystem ändern, nicht nur in einer App oder auf einem Bildschirm. Gibt es eine Möglichkeit, dies zu tun?

Durch das Durchsuchen des Internets wurde jemand angesprochen, der sagte, dass die Ersatzteil-App auf dem Markt dies tun kann, aber das war falsch. Die bevorzugte Schriftgröße wirkt sich nur auf die App selbst aus.

Die Entwicklerdokumentation scheint zu implizieren, dass eine Benutzerschriftgröße bevorzugt wird. Von http://developer.android.com/intl/fr/guide/topics/resources/more-resources.html :

sp Skalierungsunabhängige Pixel - Dies entspricht der dp-Einheit, wird jedoch auch anhand der bevorzugten Schriftgröße des Benutzers skaliert.

Es sagt jedoch nichts darüber aus, wie ein Benutzer dies einstellen soll. Ich sehe es nicht in den Einstellungen auf den Telefonen, die ich habe.

Lance Nanek
quelle

Antworten:

1

Es gibt jetzt eine Einstellung dafür, obwohl ich nicht sicher bin, ob es auf Android verfügbar ist und seit welcher Version es verfügbar ist. Es war definitiv in Sonys Lebkuchen- und ICS-ROMs (Xperia Neo V) und Cyanogenmod 9/10 enthalten.

In Cyanogenmod 9+ befindet es sich im Untermenü "System" unter der Beschriftung "Schnittstelle".

Erik
quelle
1
Ich weiß, dass das ICS von HTC auch eine Option für die Schriftgröße in den Einstellungen und dann in der Anzeige hat. Ja für den Fortschritt.
Lance Nanek
3

Werfen Sie einen Blick auf " Schriftgröße (für Root-Benutzer) " auf dem Markt. Es kostet 1,36 US-Dollar und funktioniert nur mit gerooteten Telefonen, behauptet jedoch:

"Vergrößert / verkleinert die Textgröße in allen Apps (E-Mail, SMS, Karten, Startseite, Wetter, Kalender, Widgets, ...) global."

Die Bewertungen sind nicht so gut, aber es ist einen Versuch wert.

Matt
quelle
2

Eine andere Option (sehr eingeschränkt, da Änderungen an der Plattform erforderlich sind) ist das Ändern der

./frameworks/base/core/java/android/content/res/Configuration.java

Datei.

Dort müssen Sie:

- Erstellen Sie ein Setter / Getter-Paar, um den Schriftwert zu erhalten

- Ändern Sie den Punkt, an dem die Datei den Wert erhält. Ich habe die Methode geändert

public void setToDefaults(){
  //I set the class member to the desired value trough my getter ( getFontScale )
  fontScale= this.getFontScale();
  ...
  ...
}

-Initialisieren Sie das Klassenmitglied auf den gespeicherten Wert:

   //This is the class member ( previouslly not initialized. Now i set it´s value trough my getter )
   public float fontScale= this.getFontScale();

Auf diese Weise wird bei jeder App zunächst die Schriftart auf den gespeicherten Wert eingestellt.

ps: Du solltest auch eine Schnittstelle in der Android-Einstellungen apk erstellen, sonst würde deine Schriftart nur mit einem festen Wert beginnen.

Bei Bedarf kann ich weitere Details angeben.

Leere
quelle
1

Die Ersatzteil-Plus- App (kostenlos) funktioniert auf meinem Honeycomb-Tablet (Asus Transformer) in allen Apps.

Wie in Ihrer Frage erwähnt, funktioniert dies jedoch nur, wenn der Entwickler in seiner Anwendung eine bestimmte Technik zum Festlegen von Schriftgrößen verwendet hat. Die Größen müssen in "sp" -Einheiten angegeben werden, damit diese Technik effektiv ist.

HRJ
quelle