pt1*_*123 6 android padding nine-patch
当使用9补丁图像作为背景时,填充似乎总是来自9补丁图像.即使你没有在9补丁图像中使用填充条,它也使用了drawable.
如果未包含填充线,Android将使用左侧和顶部线来定义此可绘制区域.
http://developer.android.com/guide/topics/graphics/2d-graphics.html#nine-patch
但是,您可以使用android:padding = 0dp或= Xdp在XML中覆盖它.不幸的是使用android:paddingLeft = Xdp不起作用.所以你坚持使用统一填充.我试过这样做:
android:padding="2dp"
android:paddingLeft="20dp"
Run Code Online (Sandbox Code Playgroud)
它对左边的填充没有影响.将它们放在styles.xml中会产生类似的结果.
我见过的唯一一个解决方法就是在代码中设置填充.
如果(android:padding present)它会覆盖所有其他填充值,否则if(android:paddingXXX表示)它会覆盖bg drawable paddingXXX(XXX = Left | Right | Top | Bottom)否则if(view has drawable bg)padding值来自这个drawable (将使用九个补丁),否则将应用默认填充(通常为零)
所以不要使用android:padding ="2dp".padding属性会覆盖所有内容.只需使用paddingLeft = 20dp,paddingTop = 2dp,paddingRight = 2dp,paddingBottom = 2dp.
或者您可以设置paddingLeft = 20dp,其他填充值将从bg drawable中获取.
| 归档时间: |
|
| 查看次数: |
3597 次 |
| 最近记录: |