Як ви змінюєте налаштування тексту / шрифту в Android TextView
?
Наприклад, як зробити текст жирним ?
Як ви змінюєте налаштування тексту / шрифту в Android TextView
?
Наприклад, як зробити текст жирним ?
Відповіді:
Для цього у layout.xml
файлі:
android:textStyle
Приклади:
android:textStyle="bold|italic"
Програмним способом є:
setTypeface(Typeface tf)
Встановлює шрифт і стиль, у якому текст повинен відображатися. Зауважте, що не всі Typeface
сім'ї насправді мають сміливі та курсивні варіанти, тому вам, можливо, доведеться скористатися, setTypeface(Typeface, int)
щоб отримати вигляд, який ви насправді хочете.
Ось рішення
TextView questionValue = (TextView) findViewById(R.layout.TextView01);
questionValue.setTypeface(null, Typeface.BOLD);
Просто ви можете зробити наступне:
Встановіть атрибут у XML
android:textStyle="bold"
Програматично метод:
TextView Tv = (TextView) findViewById(R.id.TextView);
Typeface boldTypeface = Typeface.defaultFromStyle(Typeface.BOLD);
Tv.setTypeface(boldTypeface);
Сподіваюсь, це допоможе вам подякувати.
У 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)
В ідеальному світі ви б встановили атрибут стилю тексту у вашому визначенні макета 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
З XML ви можете встановити TextStyle до жирного шрифту , як показано нижче
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Bold text"
android:textStyle="bold"/>
З програми, ви можете встановити TextView жирним шрифтом, як показано нижче
textview.setTypeface(Typeface.DEFAULT_BOLD);
Визначте новий стиль із потрібним форматом у файлі 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"
Найкращий шлях - це:
TextView tv = findViewById(R.id.textView);
tv.setTypeface(Typeface.DEFAULT_BOLD);
Якщо припустити, що ви новачок в Android Studio, просто ви можете зробити це в дизайні XML , використовуючи його
android:textStyle="bold" //to make text bold
android:textStyle="italic" //to make text italic
android:textStyle="bold|italic" //to make text bold & italic
у файлі .xml , встановити
android:textStyle="bold"
буде встановлено тип тексту жирним шрифтом.
Ви можете використовувати це для шрифту
створити ім'я класу TypefaceTextView та розширити TextView
приватна статична карта mTypeface;
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();
}
}
вставте шрифт у папку шрифтів, створену в папці ресурсу
<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**
Помістіть рядки в батьківській версії в xml
xmlns:app="http://schemas.android.com/apk/res/com.mediasters.wheresmyturf"
xmlns:custom="http://schemas.android.com/apk/res-auto"
4 способи зробити Android TextView жирним - Повна відповідь тут.
Використання андроїда: атрибут textStyle
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TEXTVIEW 1"
android:textStyle="bold"
/>
Використовуйте жирний | курсив для жирного та курсивного.
використовуючи метод setTypeface ()
textview2.setTypeface(null, Typeface.BOLD);
textview2.setText("TEXTVIEW 2");
Метод HtmlCompat.fromHtml (), Html.fromHtml () був застарілий у рівні API 24.
String html="This is <b>TEXTVIEW 3</b>";
textview3.setText(HtmlCompat.fromHtml(html,Typeface.BOLD));
У моєму випадку передача значення через string.xml працювала з html тегом ..
<string name="your_string_tag"> <b> your_text </b></string>
editText.setTypeface(Typeface.createFromAsset(getAssets(), ttfFilePath));
etitText.setTypeface(et.getTypeface(), Typeface.BOLD);
встановить як шрифт, так і стиль Bold.