将一个 ID 拆分为两种字体类型



我在反编译的安卓.apk的布局文件夹中有一个.xml。有一个 TextView 元素,它的 ID (android:id="@+id/x" ) 在 ID 中是文本。但是我想以字体粗体显示ID的前两个字母,并以正常字体显示文本。所以,有没有人知道,我能做些什么,在不接触ID的情况下解决这个问题。答案会很好。:)

使用 SpannableString 来实现此目的:

SpannableString str = new SpannableString( "abcdefg" );
str.setSpan( new StyleSpan(Typeface.BOLD), 0, 1, 0 );
textView.setText( str );

它应该给你"ab"粗体,其余文本不变。

你的问题有点不清楚。要以不同的格式显示文本视图的各个部分,您需要 SpannableString。像这样:

Spannable text = new SpannableString("bold, normal");    
text.setSpan(new TypefaceSpan("bold"), 0, 4, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
textView.setText(text, BufferType.SPANNABLE);  

id 就是您引用文本视图的方式。显示的文本由"android:text"属性引用。

最新更新