Hello社区,
我想在我的activity_main.xml中添加不同的可绘制xml文件
但是,当我想包括以下代码时:
<?xml version="1.0" encoding="utf-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape>
<size
android:layout_height="110dp" />
</shape>
</item>
</selector>
名称是button_height.xml到我的主文件中:
<Button
android:id="@+id/cmda1"
android:layout_width="110dp"
android:layout_height="@drawable/button_height" />
它不起作用,Eclipse只说:
您必须提供layout_height属性。 和
XML文件中的错误:中止构建。
我在互联网上搜索了一个答案,但没有找到答案。 但我认为这很多人都在做错。
所以,我希望得到有用的答案 对不起我糟糕的英语。
答案 0 :(得分:2)
你对drawable,selector和dimension的整个想法搞砸了。不能将高度放在选择器和选择器(可绘制)中作为高度。
这样做。
如果您想使用xml获取高度
在res文件夹中添加名为 res / values / dimens.xml 的文件,并在其中添加此行
<resources>
<integer name="btn_cmda_height" >110dp</integer>
</resources>
并将按钮cmda1
高度属性更改为
android:layout_height="@dimen/btn_cmda_height"
通过创建包含不同值的文件,使其适用于各种屏幕尺寸。虽然这是旧的方式。
详细了解执行此操作的新方法here
res/values/dimens.xml
res/values-small/dimens.xml
res/values-normal/dimens.xml
res/values-xlarge/dimens.xml
如果您不想使用xml获取高度
只需在按钮android:layout_height="110dp"
高度属性
cmda1
注意:强> 您的选择器代码错误,根本不需要。选择器用于定义视图的背景状态