我可以在strings.xml文件中为textview添加样式。我的样式如下..
<style name="text_searching">
<item name="android:text">dummy</item>
<item name="android:textSize">28sp</item>
<item name="android:background">@drawable/buttonbarbackground</item>
<!-- <item name="android:textColor">#ff999999</item> -->
<item name="android:textStyle">normal</item>
我在strings.xml中分配了这个样式,如下所示..
<string name="text">@style/text_searching</string>
是否正确...如果有人知道,请告诉我。 提前谢谢..
答案 0 :(得分:2)
你在做什么是正确的。虽然习惯将style
放在名为 styles 的文件中。 values
中的所有xml文件都具有相同的resources
类型,因此编译器不关心每个定义的放置位置。另一方面,人类确实......
要将此样式添加到TextView
,您可以执行以下操作:
<TextView style="@style/text_searching" .../>
我不确定您在<string ...>
处尝试做什么,但这不是TextView
,而是string
。
更新:我想想我弄清楚你实际上要做什么,而且它与TextView
无关。不,你不能这样做。您可以在某些范围内使用简单的HTML标记来定义文本大小,颜色等;那么您必须使用getText
而不是getString
来处理HTML标记。
但在任何条件下,string
都没有背景,这是完全错误的。
答案 1 :(得分:2)
使用spannable字符串:
TextView textView = (TextView) findViewById(R.id.text_view);
SpannableString spString = new SpannableString("Background text");
spString.setSpan(new BackgroundColorSpan(Color.GREEN), 5, spString.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
textView.setText(spString);
有关详情,请参阅例如this tutorial