2 Stimmen

Ändern Sie die Schriftart des Buttons innerhalb der benutzerdefinierten Button-Klasse, Android

Ich erstelle benutzerdefinierte Schaltflächen für meine App und möchte die Schriftart festlegen, die sie innerhalb der benutzerdefinierten Schaltflächenklasse verwenden (die Button erweitert). Ich kann die Schriftart von der Hauptklasse aus mit folgendem Code festlegen:

Typeface font = Typeface.createFromAsset(getAssets(), "fonts/Korean_Calligraphy.ttf");
custom_button.setTypeface(font);

das funktioniert gut, aber ich habe mehrere Schaltflächen, auf die dies angewendet werden soll. Um den Code ordentlich und prägnant zu halten, würde ich lieber möchten, dass alles innerhalb der Schaltflächenklasse selbst behandelt wird. Also zwei Fragen:

  • Wie greife ich von innerhalb meiner benutzerdefinierten Schaltflächenklasse auf das TextView der Schaltfläche zu?
  • Wie verweise ich auf die Schriftartdatei, da es mir nicht erlaubt zu scheinen, innerhalb der Schaltflächenklasse getAssets() zu verwenden?

Vielen Dank.

3voto

Konstantin Burov Punkte 68362

Wie greife ich innerhalb meiner benutzerdefinierten Button-Klasse auf den TextView des Buttons zu?

Button IST EIN TextView, daher müssen Sie hier nichts Besonderes tun. Arbeiten Sie einfach mit einem Button wie mit einem regulären TextView.

Wie referenziere ich die Schriftartdatei, da es mir nicht erlaubt scheint, getAssets() innerhalb der Button-Klasse zu verwenden?

Holen Sie sich eine Context-Instanz und verwenden Sie deren getAssets():

Context context = getContext();
context.getAssets()... //Machen Sie alles, was Sie brauchen

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X