TextView isBold始终返回NORMAL

时间:2014-12-21 14:03:21

标签: android fonts textview styles typeface

我正在设置像这样的文本视图的字体

textView.setTypeface(tf_roboto_medium, Typeface.BOLD);

当我使用此命令检查样式时,它被评估为true。

if (textView.getTypeface().getStyle() == Typeface.NORMAL) {
// always here
}
else {
// never here
}

[编辑]这是我的TextView

的xml内容
<TextView
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:text="Train"
                android:textColor="#777777"
                android:gravity="bottom|center"
                android:singleLine="true"
                android:id="@+id/txt_train"
                android:layout_gravity="left"
                android:layout_weight="15"
                android:textSize="32px"
                android:onClick="onTrainClick"
                android:clickable="true" />

我做错了什么?

PS:我读过其他帖子,要求同样的事情。他们似乎都不适合我。因此问题

2 个答案:

答案 0 :(得分:-1)

尝试其中一项:

  1. if (textView.getTypeface().isBold()) {
  2. if ((textView.getTypeface().getStyle() & Typeface.BOLD) > 0) {
  3. 从我看到的有一些用于字体样式的掩码。正常== 0因此可能存在0&amp; 0的问题0

答案 1 :(得分:-1)

你可以做一个字符串:

<string name="train"><b>Train</b></string>

然后设置:

android:text="@string/train"