Como você altera o texto para negrito no Android?

433

Como você altera as configurações de texto / fonte em um Android TextView?

Por exemplo, como você torna o texto em negrito ?

nithin
fonte
Por favor, verifique minha resposta aqui . Espero que isso irá ajudá-lo
Summved Jain
3
clique aqui
Thomas Daniel

Respostas:

552

Para fazer isso no layout.xmlarquivo:

android:textStyle

Exemplos:

android:textStyle="bold|italic"

Programaticamente, o método é:

setTypeface(Typeface tf)

Define o tipo de letra e o estilo em que o texto deve ser exibido. Observe que nem todas as Typefacefamílias realmente têm variantes em negrito e itálico; portanto, você pode precisar usar setTypeface(Typeface, int)para obter a aparência desejada.

Phobos
fonte
351

Aqui está a solução

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

Simplesmente você pode fazer o seguinte:

Defina o atributo em XML

  android:textStyle="bold"

Programaticamente, o método é:

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

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

Tv.setTypeface(boldTypeface);

Espero que isso ajude você, obrigado.

erva
fonte
Deixe-me saber o resultado
saeed
54

Em XML

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

Você pode usar apenas fontes específicas e sans, via xml, o código Java pode usar fontes personalizadasserifmonospace

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

Programaticamente (código Java)

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)
MaxEcho
fonte
22

Defina o atributo

android:textStyle="bold"
koljaTM
fonte
20

Caso você esteja usando fontes personalizadas, mas não tenha um tipo de letra em negrito para a fonte, você pode usar:

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

É muito fácil

setTypeface(Typeface.DEFAULT_BOLD);
HatemTmi
fonte
16

Se você estiver desenhando, faça isso:

TextPaint.setFlags(Paint.FAKE_BOLD_TEXT_FLAG);
noelicus
fonte
16

No mundo ideal, você definiria o atributo de estilo de texto na definição XML de layout da seguinte maneira:

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

Existe uma maneira simples de obter o mesmo resultado dinamicamente no seu código usando o setTypefacemétodo Você precisa passar e objeto da classe Typeface , que descreverá o estilo da fonte para esse TextView. Portanto, para obter o mesmo resultado da definição XML acima, você pode fazer o seguinte:

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

A primeira linha criará o estilo predefinido do formulário do objeto (neste caso, Typeface.BOLD , , mas há muitos outros predefinidos). Depois de termos uma instância do tipo de letra, podemos configurá-la no TextView. E é isso que nosso conteúdo será exibido no estilo que definimos.

Espero que ajude muito.Para obter mais informações, visite

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

IntelliJ Amiya
fonte
14

Desde o XML pode definir o textstyle a negrito como abaixo

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

Do ponto de vista programático, você pode definir o TextView como negrito, como abaixo

textview.setTypeface(Typeface.DEFAULT_BOLD);
Udara Abeythilake
fonte
10

Defina um novo estilo com o formato desejado no arquivo style.xml na pasta valores

<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>

Em seguida, aplique esse estilo ao TextView escrevendo o seguinte código com as propriedades do TextView

style="@style/TextViewStyle"
Sete
fonte
9

O melhor caminho a seguir é:

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

Supondo que você seja um iniciante no Android Studio, basta fazer isso no XML da visualização de design usando

android:textStyle="bold"          //to make text bold
android:textStyle="italic"        //to make text italic
android:textStyle="bold|italic"   //to make text bold & italic
Dan Tilakaratne
fonte
6

no arquivo .xml , defina

android:textStyle="bold" 

irá definir o tipo de texto em negrito.

Hoang Nguyen Viet
fonte
5

Você pode usar isso para fonte

crie um TypefaceTextView de nome de classe e estenda o TextView

Mapa estático privado 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();
    }
}

cole a fonte na pasta fontes criada na pasta do ativo

<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**

Coloque as linhas no layout pai no xml

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

4 maneiras de deixar o Android TextView em negrito - A resposta completa está aqui.

  1. Usando o atributo android: textStyle

    <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="TEXTVIEW 1" android:textStyle="bold" /> Use negrito | itálico para negrito e itálico.

  2. usando o método setTypeface ()

    textview2.setTypeface(null, Typeface.BOLD);
    textview2.setText("TEXTVIEW 2");
  3. O método HtmlCompat.fromHtml (), Html.fromHtml () foi descontinuado no nível da API 24.

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

No meu caso, passar valor através de string.xml funcionou com a tag html.

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

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

definirá o tipo de letra e o estilo como Negrito.

Sanket Patankar
fonte
2
Você deve incluir uma breve explicação de sua resposta para melhor descrever seu caso de uso e implementação.
Dov Benyomin Sohacheski,
Isso não acrescenta nada de novo às respostas existentes.
Nvoigt 12/0218
@nvoigt, sua resposta difere de muitas outras, pelo menos na segunda linha. Provavelmente é melhor que outras soluções. Eu acho que é capturado em stackoverflow.com/questions/6200533/… .
CoolMind