以下是我想要实现的目标。
粗黑色方形线是TextView
尺寸的轮廓。圆角广场周围的区域需要完全透明,因此背景可以从TextView
所在的布局中显示出来。
我认为这是通过在Drawable
文件夹中创建文件来实现的,该文件需要使用stroke
,solid
,corners
等类似命令但我不知道从那里去哪里。我无法找到任何有助于此的完整而全面的教程。以下是我开始的地方,但无法进一步发展。
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid
android:color="@android:color/transparent"/>
<stroke
android:width="2dp"
android:color="#000000"/>
<corners
android:radius="8dp" />
</shape>
但这与上面的图片并不相符。我的问题是如何调整上面的代码以获得我想要的图片?
答案 0 :(得分:1)
试试这个形状:
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<gradient android:endColor="#000000" android:startColor="#000000" />
<corners
android:bottomLeftRadius="8dp"
android:bottomRightRadius="8dp"
android:topLeftRadius="8dp"
android:topRightRadius="8dp" />
</shape>
然后将文本字段设置为:
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/roundedView"
/>
答案 1 :(得分:0)
对于此背景,您必须使用&#39;图层列表&#39;。像:
rounded_shapes.xml:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
<shape>
<solid android:color="@android:color/white" />
<stroke
android:width="1dp"
android:color="@android:color/black" />
</shape>
</item>
<item
android:bottom="5dp"
android:left="5dp"
android:right="5dp"
android:top="5dp">
<shape>
<corners android:radius="5dp" />
<solid android:color="#f46721" />
<stroke
android:width="1dp"
android:color="@android:color/black" />
</shape>
</item>
</layer-list>
将此drawable(表示layer_list xml)应用于TextView的背景。