2011-03-24 44 views
4

我在我的styles.xml文件中定义了如下所示的内容(如下所示)。但是由于使用了@ string/fontExtraLarge,Android崩溃了。我假设这是因为定义的顺序,但这是合法的。在样式定义中使用@string资源

我可以使用样式的'父'属性来解决这个问题,但只有一个样式定义没有意义。有没有办法解决这个问题。

顺便说一句,我得到的错误是无法膨胀指向layout.XML的XML,但真的这个文件导致了这个问题。

<!-- **** FONT SIZES **** --> 
<string name="fontExtraLarge">20sp</string> 
<string name="fontLarge">18sp</string> 
<string name="fontMedium">16sp</string> 
<string name="fontSmall">10sp</string> 
<string name="fontNormal">10sp</string>' 

<style name="screenHeader"> 
    <item name="android:layout_width">fill_parent</item> 
    <item name="android:layout_height">wrap_content</item> 
    <item name="android:textStyle">bold</item> 
    <item name="android:typeface">serif</item> 
    <item name="android:textSize">@string/fontExtraLarge</item> 
    <item name="android:textColor">@color/white</item> 
    <item name="android:gravity">center</item> 
</style> 

回答

3

的尺寸值

您应该使用dimens.xml文件,然后引用它@扪/ yourDimensionName

More details here

+0

谢谢。 [http://developer.android.com/resources/samples/SoftKeyboard/res/values-land/dimens.html](http://developer.android.com/resources/samples/SoftKeyboard/res/values-land/ dimens.html) – Salsero69 2011-03-24 18:23:50

0

所有字符串都进入res/values/strings.xml。

此外,所有样式标签都必须包含<resources/>标签。

+0

1)我试图在styles.xml定义的字符串和值.xml文件没有变化。 2)我的定义有一个资源标签。 我的应用程序确实没有字符串定义。所以这不是一个语法问题。在样式定义中严格地使用@string是一个问题。 – Salsero69 2011-03-24 18:09:26

+0

我的不好。没有看到您将字符串值设置为维度。 – Abhinav 2011-03-24 18:54:07

相关问题