Wie ändere ich Text in Android in Fettdruck?


Antworten:


551

So tun Sie dies in der layout.xmlDatei:

android:textStyle

Beispiele:

android:textStyle="bold|italic"

Programmatisch lautet die Methode:

setTypeface(Typeface tf)

Legt die Schriftart und den Stil fest, in dem der Text angezeigt werden soll. Beachten Sie, dass nicht alle TypefaceFamilien tatsächlich fett und kursiv sind. Daher müssen Sie möglicherweise verwenden setTypeface(Typeface, int), um das gewünschte Erscheinungsbild zu erhalten.


351

Hier ist die Lösung

TextView questionValue = (TextView) findViewById(R.layout.TextView01);
questionValue.setTypeface(null, Typeface.BOLD);

77

Sie können einfach Folgendes tun:

Setzen Sie das Attribut in XML

  android:textStyle="bold"

Programmatisch ist die Methode:

TextView Tv = (TextView) findViewById(R.id.TextView);

Typeface boldTypeface = Typeface.defaultFromStyle(Typeface.BOLD);

Tv.setTypeface(boldTypeface);

Hoffe das hilft dir danke.


Lassen Sie mich das Ergebnis wissen
siehe

54

In XML

android:textStyle="bold" //only bold
android:textStyle="italic" //only italic
android:textStyle="bold|italic" //bold & italic

Sie können nur bestimmte Schriftarten verwenden sans, serifund monospaceüber XML kann Java-Code benutzerdefinierte Schriftarten verwenden

android:typeface="monospace" // or sans or serif

Programmatisch (Java-Code)

TextView textView = (TextView) findViewById(R.id.TextView1);

textView.setTypeface(Typeface.SANS_SERIF); //only font style
textView.setTypeface(null,Typeface.BOLD); //only text style(only bold)
textView.setTypeface(null,Typeface.BOLD_ITALIC); //only text style(bold & italic)
textView.setTypeface(Typeface.SANS_SERIF,Typeface.BOLD); 
                                         //font style & text style(only bold)
textView.setTypeface(Typeface.SANS_SERIF,Typeface.BOLD_ITALIC);
                                         //font style & text style(bold & italic)

22

Legen Sie das Attribut fest

android:textStyle="bold"

20

Für den Fall, dass Sie benutzerdefinierte Schriftarten verwenden, aber keine fette Schrift für die Schriftart haben, die Sie verwenden können:

myTextView.setText(Html.fromHtml("<b>" + myText + "</b>");


16

Wenn Sie es zeichnen, wird dies es tun:

TextPaint.setFlags(Paint.FAKE_BOLD_TEXT_FLAG);

16

In der idealen Welt würden Sie das Textstilattribut in Ihrer Layout-XML-Definition folgendermaßen festlegen:

<TextView
    android:id="@+id/TextView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textStyle="bold"/>

Es gibt eine einfache Möglichkeit, das gleiche Ergebnis mithilfe der setTypefaceMethode dynamisch in Ihrem Code zu erzielen . Sie müssen ein Objekt der Typeface- Klasse übergeben, das den Schriftstil für diese TextView beschreibt. Um das gleiche Ergebnis wie bei der obigen XML-Definition zu erzielen, können Sie Folgendes tun:

TextView Tv = (TextView) findViewById(R.id.TextView);
Typeface boldTypeface = Typeface.defaultFromStyle(Typeface.BOLD);
Tv.setTypeface(boldTypeface);

In der ersten Zeile wird der vordefinierte Stil des Objektformulars erstellt (in diesem Fall Typeface.BOLD , es sind jedoch noch viele weitere vordefiniert). Sobald wir eine Schriftinstanz haben, können wir sie in der Textansicht festlegen. Und das war's, unser Inhalt wird in dem von uns definierten Stil angezeigt.

Ich hoffe, es hilft Ihnen sehr. Für bessere Informationen können Sie besuchen

http://developer.android.com/reference/android/graphics/Typeface.html


14

Aus der XML können Sie die eingestellte Textstil zu fett , wie unten

<TextView
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="Bold text"
   android:textStyle="bold"/>

Im Programm können Sie die Textansicht wie folgt fett setzen

textview.setTypeface(Typeface.DEFAULT_BOLD);

10

Definieren Sie einen neuen Stil mit dem gewünschten Format in der Datei style.xml im Ordner values

<style name="TextViewStyle" parent="AppBaseTheme">
    <item name="android:textStyle">bold</item>
    <item name="android:typeface">monospace</item>
    <item name="android:textSize">16sp</item>
    <item name="android:textColor">#5EADED</item>

</style>

Wenden Sie diesen Stil dann auf die Textansicht an, indem Sie den folgenden Code mit den Eigenschaften der Textansicht schreiben

style="@style/TextViewStyle"

9

Der beste Weg ist:

TextView tv = findViewById(R.id.textView);
tv.setTypeface(Typeface.DEFAULT_BOLD);

6

Angenommen, Sie sind ein neuer Starter in Android Studio. Sie können dies einfach in XML in der Entwurfsansicht mithilfe von erledigen

android:textStyle="bold"          //to make text bold
android:textStyle="italic"        //to make text italic
android:textStyle="bold|italic"   //to make text bold & italic


5

Sie können dies für die Schriftart verwenden

Erstellen Sie einen Klassennamen TypefaceTextView und erweitern Sie die TextView

private statische Karte mTypefaces;

public TypefaceTextView(final Context context) {
    this(context, null);
}

public TypefaceTextView(final Context context, final AttributeSet attrs) {
    this(context, attrs, 0);
}

public TypefaceTextView(final Context context, final AttributeSet attrs, final int defStyle) {
    super(context, attrs, defStyle);
    if (mTypefaces == null) {
        mTypefaces = new HashMap<String, Typeface>();
    }

    if (this.isInEditMode()) {
        return;
    }

    final TypedArray array = context.obtainStyledAttributes(attrs, styleable.TypefaceTextView);
    if (array != null) {
        final String typefaceAssetPath = array.getString(
                R.styleable.TypefaceTextView_customTypeface);

        if (typefaceAssetPath != null) {
            Typeface typeface = null;

            if (mTypefaces.containsKey(typefaceAssetPath)) {
                typeface = mTypefaces.get(typefaceAssetPath);
            } else {
                AssetManager assets = context.getAssets();
                typeface = Typeface.createFromAsset(assets, typefaceAssetPath);
                mTypefaces.put(typefaceAssetPath, typeface);
            }

            setTypeface(typeface);
        }
        array.recycle();
    }
}

Fügen Sie die Schriftart in den Schriftartenordner ein, der im Asset-Ordner erstellt wurde

<packagename.TypefaceTextView
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1.5"
        android:gravity="center"
        android:text="TRENDING TURFS"
        android:textColor="#000"
        android:textSize="20sp"
        app:customTypeface="fonts/pompiere.ttf" />**here pompiere.ttf is the font name**

Platzieren Sie die Zeilen im übergeordneten Layout in der XML

 xmlns:app="http://schemas.android.com/apk/res/com.mediasters.wheresmyturf"
xmlns:custom="http://schemas.android.com/apk/res-auto"

4

4 Möglichkeiten, Android TextView fett zu machen - Die vollständige Antwort finden Sie hier.

  1. Verwenden des Attributs android: textStyle

    <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="TEXTVIEW 1" android:textStyle="bold" /> Verwenden Sie fett | kursiv für fett und kursiv.

  2. mit der setTypeface () -Methode

    textview2.setTypeface(null, Typeface.BOLD);
    textview2.setText("TEXTVIEW 2");
  3. Die Methode HtmlCompat.fromHtml (), Html.fromHtml (), wurde in API-Version 24 nicht mehr unterstützt.

     String html="This is <b>TEXTVIEW 3</b>";
     textview3.setText(HtmlCompat.fromHtml(html,Typeface.BOLD));

3

In meinem Fall hat das Übergeben von Werten durch string.xml mit dem HTML-Tag funktioniert.

<string name="your_string_tag"> <b> your_text </b></string>


1
editText.setTypeface(Typeface.createFromAsset(getAssets(), ttfFilePath));
etitText.setTypeface(et.getTypeface(), Typeface.BOLD);

setzt sowohl die Schrift als auch den Stil auf Fett.


2
Sie sollten eine kurze Erläuterung Ihrer Antwort beifügen, um den Anwendungsfall und die Implementierung besser zu beschreiben.
Dov Benyomin Sohacheski

Dies fügt den vorhandenen Antworten nichts Neues hinzu.
nvoigt

@nvoigt, seine Antwort unterscheidet sich von vielen anderen, zumindest in der zweiten Zeile. Wahrscheinlich ist es besser als andere Lösungen. Ich denke, es ist von stackoverflow.com/questions/6200533/… erfasst .
CoolMind
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.