Как изменить текст на жирный в Android? - PullRequest
391 голосов
/ 25 января 2011

Как изменить настройки текста / шрифта в Android TextView? Например, как вы делаете текст жирным шрифтом ?

Ответы [ 18 ]

507 голосов
/ 25 января 2011

Для этого в файле layout.xml:

android:textStyle

Примеры:

android:textStyle="bold|italic"

Программно метод:

setTypeface(Typeface tf)

Устанавливает гарнитуруи стиль, в котором должен отображаться текст.Обратите внимание, что не все Typeface семейства на самом деле имеют варианты, выделенные жирным шрифтом и курсивом, поэтому вам может потребоваться использовать setTypeface(Typeface, int), чтобы получить тот вид, который вам действительно нужен.

340 голосов
/ 25 января 2011

Вот решение

TextView questionValue = (TextView) findViewById(R.layout.TextView01);
questionValue.setTypeface(null, Typeface.BOLD);
69 голосов
/ 10 декабря 2015

Просто вы можете сделать следующее:

Установить атрибут в XML

  android:textStyle="bold"

Программно метод:

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

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

Tv.setTypeface(boldTypeface);

Надеюсь, это поможет вам, спасибо.

52 голосов
/ 11 марта 2014

В XML

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

Вы можете использовать только определенные шрифты sans, serif & monospace через xml, Java-код можно использовать пользовательские шрифты

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

Программно (код 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)
22 голосов
/ 04 августа 2012

Установить атрибут

android:textStyle="bold"
18 голосов
/ 12 февраля 2014

Для случая, когда вы используете пользовательские шрифты, но не имеете жирного шрифта для шрифта, который вы можете использовать:

myTextView.setText(Html.fromHtml("<b>" + myText + "</b>");
17 голосов
/ 25 сентября 2013

Это очень просто

setTypeface(Typeface.DEFAULT_BOLD);
16 голосов
/ 04 сентября 2012

Если вы рисуете, то это будет сделано:

TextPaint.setFlags(Paint.FAKE_BOLD_TEXT_FLAG);
15 голосов
/ 14 мая 2015

В идеальном мире вы бы задали атрибут стиля текста в определении XML макета следующим образом:

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

Существует простой способ динамического достижения того же результата в вашем коде с помощью setTypeface метод.Вам нужно передать и объект класса Typeface , который будет описывать стиль шрифта для этого TextView.Таким образом, чтобы достичь того же результата, что и в приведенном выше определении XML, вы можете сделать следующее:

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

В первой строке будет создан предопределенный стиль формы объекта (в данном случае Typeface.BOLD , но есть еще много предопределенных).Когда у нас есть экземпляр гарнитуры, мы можем установить его в TextView.И это все, что наш контент будет отображаться в стиле, который мы определили.

Надеюсь, это вам очень поможет. Для более подробной информации вы можете посетить

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

10 голосов
/ 15 февраля 2014

Определите новый стиль с нужным форматом в файле style.xml в папке значений

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

Затем примените этот стиль к TextView, написав следующий код со свойствами TextView

style="@style/TextViewStyle"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...