元素形状不为';t没有必需的属性android:layout\u height
我使用一个形状元素作为视图的背景,这样做。我正在使用Android Studio,它告诉我元素形状不为';t没有必需的属性android:layout\u height,android,xml,Android,Xml,我使用一个形状元素作为视图的背景,这样做。我正在使用Android Studio,它告诉我 元素形状没有必需的属性android:layout\u height 元素形状没有必需的属性android:layout\u width 代码如下: <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <solid
元素形状没有必需的属性android:layout\u height
元素形状没有必需的属性android:layout\u width
代码如下:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/darkBrown"/>
<stroke android:layout_width="match_parent" android:layout_height="match_parent"/>
<corners android:radius="10dip"/>
<padding android:left="0dip" android:right="0dip" android:top="0dip" android:bottom="0dip"/>
</shape>
所以基本上我的问题是:如果形状在技术上不需要这些属性,为什么会出现这个错误?我如何告诉android停止将其标记为错误,或者如何避免它
多谢各位
已解决:原因是它不在drawable
文件夹中
编辑:是的,我知道笔划部分不正确。您可绘制的XML首先是不正确的。您不能只使用您喜欢的属性并期望它工作,例如您的
具有android:layout\u width
和android:layout\u height
,这对
没有意义,并且不受支持。虽然它也android:width
,但它与width
不同,与layout\u width
没有任何共同之处。文档和包含所有支持的属性 下面是一个形状的示例:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<corners
android:radius="14dp"
/>
<solid
android:color="#ADD8E6"
/>
<padding
android:left="0dp"
android:top="0dp"
android:right="0dp"
android:bottom="0dp"
/>
<size
android:width="100dp"
android:height="60dp"
/>
<stroke
android:width="3dp"
android:color="#ADD8E6"
/>
</shape>
显示错误的原因是它不在可绘制的
文件夹中。(当我在输入错误后重命名drawable
文件夹时,它会自动移动到layout
。这与错误无关,因为即使使用了正确的宽度和高度属性(复制了上面答案提供的代码),我仍然能得到它。谢谢你的回答!但我还是摆脱不了红色!也许是安卓工作室的事!编辑:好吧,我的错,由于某种原因,当我重命名可绘制文件夹时,layout_bg.xml移到了layout!