我试图在XML中实现像这样的ShapeDrawable,但到目前为止还没有成功。
如何仅在两侧显示笔划?
这甚至可能吗?
否则我使用的是什么云(我将它作为TextView的背景播种)。
答案 0 :(得分:7)
以下是使用LayerListDrawable
:
<强> background_white_lateral_border.xml 强>
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
<shape android:shape="rectangle" >
<solid android:color="@android:color/white" />
</shape>
</item>
<item>
<inset
android:insetLeft="1dp"
android:insetRight="1dp" >
<shape android:shape="rectangle" >
<solid android:color="@android:color/black" />
</shape>
</inset>
</item>
</layer-list>
注意:首先绘制一个白色矩形,然后是一个黑色矩形,其上方有一个左右插图1dp
,给出了横向边框的效果。这是一个值得记住的事情,以防你担心性能(在我看来,对于这样的小型造型来说,这可以忽略不计)。
答案 1 :(得分:1)
AFAIK,单个ShapeDrawable
无法实现。一个9补丁PNG,或LayerListDrawable
两个ShapeDrawables
(每行一个)应该可以工作。