3

如前所述,当我引用维度资源时,我无法呈现 XML 属性(即 android:layout_height="@dimen/test 不起作用)。当我将特定属性硬编码为 200dp 或 200px 时,它可以正常工作并且是能够渲染。此外,即使出现渲染问题,我也能够编译代码并将其加载到我的 android 设备中,并且属性看起来正确。@string 引用工作,为什么我不能用 @dimen 资源来做到这一点?

<resources>
    <!-- Default screen margins, per the Android Design guidelines. -->
    <dimen name="activity_horizontal_margin">16dp</dimen>
    <dimen name="activity_vertical_margin">16dp</dimen>
    <dimen name="test">200px</dimen>
</resources>

<Button
        android:layout_width="wrap_content"
        android:layout_height="@dimen/test"
        android:text="New Button"
        android:id="@+id/button"
        android:layout_gravity="right|center_vertical"/>

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

4

1 回答 1

0

我希望这可以帮助别人。

今天我遇到了与上面报道的相同的问题。我正在使用 Windows 8.1、64 位、jdk 1.8.0、android studio 1.2 Beta 3。

我所做的是;

  1. 转到dimens.xml 文件(位置是:res/values/dimens.xml)并打开它。
  2. 创建任意更改,并保存更改。就我而言,我添加了一个具有不同名称的重复值,即

    16dp

  3. 回到布局预览,错误通知就消失了。

  4. 您现在可以返回 dimes.xml 并撤消任意更改,以恢复文件的原始状态(如果您愿意)。

我没有任何技术原因可以修复它,但肯定它对我有用。

我想这是一个错误或什么的。

于 2015-04-20T04:52:04.130 回答