在样式定义中使用@string资源

时间:2011-03-24 17:54:29

标签: android string resources coding-style

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

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

顺便说一下,我得到的错误是无法扩展指向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>

2 个答案:

答案 0 :(得分:3)

您应该将dimens.xml文件用于维度值

然后引用它@ dimen / yourDimensionName

More details here

答案 1 :(得分:0)

所有字符串都在res / values / strings.xml中。

此外,所有样式标记都必须附加<resources/>标记。