9path 导致的一场冤假错案
今天做对话框开发,遇到一个问题,就是弹出来的对话框太丑了。如图:
大家都是warp_content, 前面几个就是真的wrap_coment了。只有最后一个还可以看。后来自己找代码,写的都一样,就去问同事,同事说,可能是因为背景图片不一样导致的。
后来一查,果然。一个
<item android:drawable="@color/public_white" />
这是是很丑的,没有边距的那个。
一个
<item android:drawable="@drawable/listbackground_normal_plus" />
这个是还可以的那个。
原来背景图也影响wrap_content, 背景图也是内容的一部分啊。关键是自己没有这个意识。
后来发现,用的是9patch。我在想为什么加上颜色就不行,加上9path的图片就可以呢?因为他是张图片,他是有宽高的。
当你warp_content的时候,别忘了背景的宽高也是有影响的,不只是控件的宽高。
泰山崩于前而色不变的曹新雨,抱歉