我正在尝试创建一个自定义的android“style”xml。虽然我看到的其他人似乎都在使用整数,但它甚至不会编译:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="DialogStyle"
parent="android:style/Theme.Dialog"
>
<item name="android:background">@color/ReliantCyan</item>
<item name="android:radius">6</item>
<item name="android:textColor">@color/White</item>
</style>
</resources>
得到我:
.../dialogStyle.xml:7: error: Error: Integer types not allowed (at 'android:radius' with value '6').
我还尝试了6pd
和6px
但是它说没有字符串允许。我在这里做错了什么?
(任何接受的答案必须与android 2.2兼容。)
我现在也尝试过:
<dimen name="dRadius">10pd</dimen>
然后
<item name="android:radius">@dimen/dRadius</item>
但是我得到了一个非常类似的错误:
... error: Error: String types not allowed (at 'dRadius' with value '10pd').
答案 0 :(得分:3)
我无法完全解释这种行为。指定<item name="android:radius">6dp</item>
就足够了。
但是,要解决此问题,我们可以添加维度资源(在同一文件中,只要它在style
标记之外),然后通过@dimen
使用。 / p>
这样的事情:
<resources>
<dimen name="testradius">6dp</dimen>
<style ...>
...
<item name="android:radius">@dimen/testradius</item>
...
</style>
</resources>
请务必将其指定为6dp
(6px
也应该有效),而不是6
或6pd
或其任何变体。
答案 1 :(得分:1)
我可能错了,但我认为你的声明应该是
机器人:半径= “6DP”