1

我不想在我的 layout.xml 中指定硬编码的测试大小值,因此我使用以下规范:

android:layout_height="@integer/intervalViewHt"

和@integer/intervalViewHt 值如下:

<integer name="medium">15</integer>

现在,同时膨胀 android 正在产生一个问题,说它不能膨胀视图。我想实际指定值,dp所以实际值应该像

android:layout_height="15dp"

有人能帮我一下吗 ?

4

3 回答 3

2

您正在寻找的是“维度”而不是普通整数。

宣言:

<dimen name="intervalViewHt">15dp</dimen>

用法:

android:layout_height="@dimen/intervalViewHt"

查看给定的链接以获取 Android 文档中的更多示例。

于 2012-10-24T18:29:25.447 回答
0

我在不同设备上使用类似这样的文本大小。它是基于java的,而不是xml。

tvOutput.setTextSize(TypedValue.COMPLEX_UNIT_DP, getResource().getInteger(R.integer.medium));

我还没有测试过代码,所以你可能不得不使用它。我相信你可以做类似的事情。

button1.setHeight(TypedValue.COMPLEX_UNIT_DP, getResource().getInteger(R.integer.medium));

虽然我还没有尝试过,但您可能需要与TypedValue不同的东西

于 2012-10-24T16:56:12.773 回答
-1

如果你给它一个字符串而不是一个整数怎么办。即在字符串资源中,您有一个引用的字符串“15dp”

于 2012-10-24T16:32:40.883 回答