EditText具有给定高度的左右边框

时间:2015-12-09 10:51:38

标签: android android-edittext android-drawable

edit text with stoke of given height

如何让我的编辑文字在底部,左侧和右侧有一个蓝色边框的背景,左侧和右侧边界有(比方说)高度为2dp?

我尝试过使用行列表,但是很难像图片中那样左右边框

<?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/holo_blue_bright"/>
       <size android:height="1dp"/>
    </shape>
</item>
<item android:bottom="5dp" android:left="5dp" android:right="5dp">
    <shape>
        <solid android:color="@android:color/black"/>
    </shape>
</item>

这就是我得到的

bad output

3 个答案:

答案 0 :(得分:1)

大多数情况下,要让这类背景开发者使用9.png图形,您可以在此网站上生成背景。

http://android-holo-colors.com/

答案 1 :(得分:1)

我试过,这对我有用。

<?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/holo_blue_bright" />
            <size android:width="5dp" />
        </shape>
    </item>

    <!-- main color -->
    <item
        android:bottom="1.5dp"
        android:left="1.5dp"
        android:right="1.5dp">
        <shape>
            <solid android:color="@android:color/black" />
        </shape>
    </item>

    <!-- draw another block to cut-off the left and right bars -->
    <item android:bottom="5.0dp">
        <shape>
            <solid android:color="@android:color/black" />
        </shape>
    </item>
</layer-list>

答案 2 :(得分:0)

尝试这种方式并设置为背景

 <?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

    <item android:bottom="1dp"
        android:left="1dp"
        android:right="1dp"
        android:top="-2dp">
        <shape android:shape="rectangle" >
            <stroke
                android:width="0.5dp"
                android:color="@android:color/black" />
        </shape>
    </item>

</layer-list>

设置为Edittext作为背景

<EditText
     android:id="@+id/editTextone"
     android:layout_width="fill_parent"
     android:layout_height="40dp"
    android:background="@drawable/edtbg"
    />