我创建了一个自定义文本视图来设置自定义字体并为整个应用程序设置 html 文本。因为我的应用在很多地方都有这两种功能。在这种情况下,我可以将自定义字体设置为整个 android 应用程序,效果很好。但未能为自定义文本视图应用 html 文本。
我的限制:
- 我不想获取 textview 并使用
setText(Html.fromHtml("Some text"))
. 当我在代码中使用它时它正在工作,但我想将文本strings.xml
用作<string name="my_app"><![CDATA[My Whole <b>app</b>lication]]></string>
- 我无法在自定义类函数中覆盖 settext,因为它是最终方法。
- 我有将近 100 个 html 文本。我不想在代码中硬编码这些字符串。请帮忙。
我的自定义类:
public class CustomTextView extends TextView {
public CustomTextView(Context context) {
super(context);
// TODO Auto-generated constructor stub
}
public CustomTextView(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
}
public CustomTextView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
// TODO Auto-generated constructor stub
}
@Override
public void setTypeface(Typeface tf) {
// TODO Auto-generated method stub
super.setTypeface(Typeface.createFromAsset(getContext().getAssets(), "fonts/gothic.ttf"));
}
}
我的布局文件:
<com.views.CustomTextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/my_app" />
我得到的输出为:我的应用程序
我希望输出为:我的应用程序
粗体字应用程序
有没有办法做到这一点?