Eclipse + Android无法识别我的(尺寸)值

4
我正在使用Eclipse,Android插件和Sams的《Teach Yourself Android Development》书籍自学Android。我遇到了一个奇怪的小问题。我已经能够在res/values目录中创建保存字符串和颜色值的xml文件(colors.xml和strings.xml)。例如,在Android屏幕的属性中设置“Text”和“Text color”属性,使用类似于“@string/topTitle”和“@color/titleColor”的引用来引用这些值,其中topTitle和titleColor在xml文件中定义。
但是:当我创建一个名为“dimens.xml”的文件并在其中放置字体大小时,Eclipse会正确地将此文件放入res/values中,但是当我尝试引用这些值时,例如“@dimension/titleFont”,我会收到错误消息“找不到与给定名称匹配的资源”。我尝试了很多不同的名称,我尝试了“@dimens”而不是类型,仍然没有任何作用。如果我进入布局xml文件并将其明确设置为字体大小,例如22pt,它就可以工作。
所以,当我创建“dimens.xml”文件时,Eclipse足够识别它并将其放入res/values中,并允许我编辑它,并显示它充满(dimension)值。它只是不能识别我在其他xml文件中的引用。
我使用的书实际上没有显示尺寸示例,因此我一定做错了什么。我查看了Android文档,但没有看到任何问题。
感谢任何帮助。谢谢。
1个回答

8

从另一个xml文件中引用一个维度变量(存储在你的dimens.xml中(这里的名称并不重要,重要的是里面的内容))的正确方法是这样的:

"@dimen/nameOfVariable"

请注意,它既不是“dimension”、“dimensions”或“dimens”,而是“dimen”!如果您查看存储尺寸值的xml元素的xml文件,这将有意义,因为“dimen”是其名称。
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <dimen name="someDimension">5dp</dimen>
    <dimen name="anotherDimension">10dp</dimen>
</resources>

谢谢!问题已解决——程序现在可以正常工作了。所以我使用了XML元素名称,本应该早点想到的... - Tim
@Tim:很高兴我能帮到你!如果这个答案解决了你的问题,你应该将其标记为已接受。如果你认为这是一个好的答案,也可以考虑点赞 :) - Julian
我很高兴将问题标记为已回答并给您点赞(这样您就可以积攒它们以获得免费的烤面包机或其他东西),但我不知道在页面上如何执行这些任务... - Tim
@Tim:在每个答案左边,都有一个可以点击的向上和向下箭头(还有一个计数器),你可以用它来赞成或反对一个回答。作为提问者,你也会看到一个“已勾选”的标记,你可以用它来标记你问题的正确答案。关于提问、声望以及它们如何协同工作的更多信息,我建议阅读常见问题解答页面:http://stackoverflow.com/faq :) - Julian
再次感谢。是的,现在我看到Stack Overflow很有用了,我会阅读常见问题解答 :) 我试着给你一个点赞,但我还没有足够的“声望”...你只能满足于那种帮助陌生人的温暖感觉了... - Tim
@Tim:帮助陌生人正是 Stack Overflow 的全部意义。享受吧 :) - Julian

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接