5

这是我的编码。这是 TextView 4 边框的设计蓝色。我想要的是只为 3 个边框(顶部、左侧和底部)设计。

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" >
        <shape>
            <solid
                android:color="#449def" />
            <stroke
                android:width="1dp"
                android:color="#2f6699" />
            <corners
                android:radius="0dp" />
            <padding
                android:left="5dp"
                android:top="5dp"
                android:right="5dp"
                android:bottom="5dp" />
        </shape>
    </item>
    <item>
        <shape>
            <gradient
                android:startColor="#ffffff"
                android:endColor="#ffffff"
                android:angle="270" />
            <stroke
                android:width="1dp"
                android:color="#2f6699" />
            <corners
                android:radius="0dp" />
            <padding
                android:left="5dp"
                android:top="5dp"
                android:right="5dp"
                android:bottom="5dp" />
        </shape>
    </item>
</selector>
4

3 回答 3

10

下面的代码放置在 1dp 高度的底部,你必须在其他方面玩这个

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

<!-- This is the line -->
<item>
  <shape>
        <solid android:color="#535353" />
  </shape>
</item>

<!-- This is the main color -->
<item android:bottom="1dp">
 <shape>
       <solid android:color="#252525" />
 </shape>
</item>
</layer-list>

参考这个讨论Open-sided Android stroke?

于 2012-12-11T05:29:32.600 回答
2

这是一个快速的解决方案(可能是愚蠢的),添加android:translationX="2dp"您的TextView,您可以添加android:paddingRight="2dp"以弥补丢失的空间。

于 2012-12-11T05:38:42.607 回答
1

像这样试试

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape>
            <padding android:bottom="1dp" android:left="1dp" android:right="0dp"
                android:top="1dp"/>
            <solid android:color="#000"/>
        </shape>
    </item>

    <!-- Background -->
    <item>
        <shape>
            <solid android:color="@color/white"/>

        </shape>
    </item>
</layer-list>
于 2016-12-31T16:19:18.220 回答