Установить стиль TextView (жирный или курсив) - PullRequest
775 голосов
/ 01 июня 2011

Как установить стиль TextView (полужирный или курсив) в Java и без использования XML-макета?

Другими словами, мне нужно написать android:textStyle с помощью Java.

Ответы [ 24 ]

1 голос
/ 14 июля 2015

И, как объяснено здесь Строка ресурсов для разработчиков Android если вам нужно использовать параметры в вашем текстовом ресурсе с стилизацией, вы должны выйти из открывающих скобок

<resources>
<string name="welcome_messages">Hello, %1$s! You have &lt;b>%2$d new messages&lt;/b>.</string>
</resources>

и вызовите formatHtml (строка)

Resources res = getResources();
String text = String.format(res.getString(R.string.welcome_messages), username, mailCount);
CharSequence styledText = Html.fromHtml(text);
0 голосов
/ 19 августа 2015

Лучший способ - определить его в styles.xml

<style name="common_txt_style_heading" parent="android:style/Widget.TextView">
        <item name="android:textSize">@dimen/common_txtsize_heading</item>
        <item name="android:textColor">@color/color_black</item>
        <item name="android:textStyle">bold|italic</item>
</style>

и обновить в TextView

  <TextView
     android:id="@+id/txt_userprofile"
     style="@style/common_txt_style_heading"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_centerHorizontal="true"
     android:layout_marginTop="@dimen/margin_small"
     android:text="@string/some_heading" />
0 голосов
/ 29 декабря 2017

Это единственное, что мне помогло на OnePlus 5T, настроенном со шрифтом OnePlus Slate ™:

textView.setTypeface(Typeface.create(textView.getTypeface(), useBold ? Typeface.BOLD : Typeface.NORMAL));

Другие методы позволяют использовать Roboto, когда BOLD или NORMAL.

0 голосов
/ 02 января 2017
AppCompatTextView text =(AppCompatTextView)findViewById(R.layout.appCompatTextView1);
text.setTypeface(null,Typeface.BOLD);

Используйте описанный выше метод для программной настройки гарнитуры.

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