在TextView / EditText上使用“android:textAppearance”失败,但是“样式”起作用

这是一个XML示例TextView,它将正确地将TextContactContactName应用于TextView。

 <TextView android:id="@+id/name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@id/photo" android:layout_alignTop="@id/photo" android:paddingLeft="10dp" android:text="First Last" style="@style/TextContactContactName" /> 

现在,我还有其他一些东西可以设置在这个元素上,而不是文本相关的。 因此,我试图移动TextContactContactName并通过“android:textAppearance”

 <TextView android:id="@+id/name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@id/photo" android:layout_alignTop="@id/photo" android:paddingLeft="10dp" android:text="First Last" android:textAppearance=@style/TextContactContactName" /> 

不幸的是,文本格式没有被应用。

这是样式(存储在res/values/styles-text.xml )的样子:

 <style name="TextContactContactName"> <item name="android:textSize">24sp</item> <item name="android:textColor">#333333</item> <item name="android:shadowColor">#ffffff</item> <item name="android:shadowDx">0</item> <item name="android:shadowDy">1</item> <item name="android:shadowRadius">1</item> </style> 

我是否使用textAppearance标记错误?

我testing了Android 2.2 – HTC Desire。

Solutions Collecting From Web of "在TextView / EditText上使用“android:textAppearance”失败,但是“样式”起作用"

好吧,看起来像我的错。 我做了一个快速testing:

 <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Text styled using 'style'." style="@style/UiTestTextView" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Text styled using 'textAppearance'." android:textAppearance="@style/UiTestTextView" /> 

和styles-text.xml:

 <style name="UiTestTextView"> <item name="android:textColor">#ff0000</item> <item name="android:textSize">16sp</item> <item name="android:shadowColor">#ffffff</item> <item name="android:shadowDx">1</item> <item name="android:shadowDy">2</item> <item name="android:shadowRadius">3</item> </style> 

关键是记住shadow*元素不是文本属性。 因此不会通过文字外观应用。

我要问Android开发者邮件列表,如果这是所需的行为。

我就这个问题提交了一个错误报告。 我认为我得到了标准答复:“影子不被视为文字外观的一部分”。

http://code.google.com/p/android/issues/detail?can=2&start=0&num=100&q=&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars&groupby=&sort=&id=35887