如何在android中的矩形边框底部

时间:2013-06-03 06:03:06

标签: android

我想给我的按钮形状,只有底线用2 dp大小着色,其余的边框部分如左,上,右应该是透明的。我见过我的例子,但他们只有完整的边框颜色。即使我在我的xml中使用了LayerList元素并尝试仅将形状赋予底部,但却无法仅创建底部标题。所以请给我解决方案

3 个答案:

答案 0 :(得分:0)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="YOUR LAYOUT COLOR"
>

<Button android:id="@+id/button" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"
    android:background="YOUR BUTTON COLOR"
    android:layout_marginBottom="2dp"></Button>    

 </LinearLayout>

试试这段代码

答案 1 :(得分:0)

您可以使用9补丁图片。这应该是实现这一目标的最佳方式。

我认为你不能轻易地实现这一点。

查看EditText ICS图像样本以获得一个想法。

enter image description here

答案 2 :(得分:0)

有一个简单的黑客可以做到这一点。

步骤1:创建一个名为borderbutton.xml的可绘制xml文件,放入res/drawable文件夹并将其复制到内部:

<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <stroke android:width="1dp" android:color="#0000" />
    <padding android:left="0dp" android:top="0dp" android:right="0dp"
        android:bottom="2dp" />
</shape>

然后,您可以修改android:colorandroid:bottom值,以更好地满足您的需求。

第2步:在你的Activity中添加这个。

Button myButton = (Button)findElementById(R.id.yourButton);
myButton.setBackgroundResource(R.drawable.borderbutton);

如果不起作用,你可以试试这个。

Drawable borderDrawable = getResources().getDrawable(R.drawable.borderbutton);
myButton.setBackgroundDrawable(borderDrawable);