【发布时间】:2012-05-13 03:40:45
【问题描述】:
我有一个非常简单的形状,我想设置它的宽度:
<shape android:shape="rectangle">
<solid android:color="@color/orange"/>
<size android:width="2dp"/>
</shape>
但是,当我将它分配给 EditText 的背景时,它只显示橙色背景,而不是宽度为 2dp 的矩形。为什么设置大小不起作用?我想在左侧创建一个带有橙色矩形的透明可绘制对象。我也把这个包裹在一个选择器中:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true">
<shape android:shape="rectangle">
<solid android:color="@color/orange"/>
<size android:width="2dp" android:height="6dp"/>
</shape>
</item>
<item>
<shape android:shape="rectangle">
<solid android:color="@android:color/transparent"/>
</shape>
</item>
</selector>
我尝试添加高度只是为了看看它是否会改变大小。它没有。这就像它完全忽略了大小。什么鬼?
【问题讨论】:
-
它怎么不适合你?它就像一个魅力。也许问题出在您的布局设置中?看看你的 Layout 是否有 wrap_content 的高度和宽度。
-
这很简单。
被忽略,并且总是会创建一个填充视图的形状。 -
并非总是如此,当然不是 drawableTop/Bottom/etc 属性。
-
@Daler 你在说什么只是忽略了大小并填充了视图。你应该测试过它。与布局设置无关。
标签: android drawable xml-layout shapedrawable