1

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

4

3 回答 3

0

您可以使用 9-patch 图像。这应该是实现这一目标的最佳方式。

我不认为你可以很容易地通过使用形状来实现这一点。

查看 EditText ICS 图像示例以获得一个想法。

在此处输入图像描述

于 2013-06-03T06:21:55.037 回答
0

有一个简单的技巧可以做到这一点。

第 1 步:创建一个名为 的可绘制 xml 文件borderbutton.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步:在你的活动中添加这个。

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

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

Drawable borderDrawable = getResources().getDrawable(R.drawable.borderbutton);
myButton.setBackgroundDrawable(borderDrawable);
于 2013-06-03T06:42:34.333 回答
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>

试试这个代码

于 2013-06-03T06:12:56.667 回答