Android - 按钮的边框

新手上路,请多包涵

如何为按钮添加边框?是否可以在不使用图像的情况下做到这一点?

原文由 jeffreyveon 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 915
2 个回答

第 1 步:创建名为:my_button_bg.xml 的文件

第 2 步:将此文件放入 res/drawables.xml

第 3 步:插入以下代码

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
  android:shape="rectangle">
  <gradient android:startColor="#FFFFFF"
    android:endColor="#00FF00"
    android:angle="270" />
  <corners android:radius="3dp" />
  <stroke android:width="5px" android:color="#000000" />
</shape>

第 4 步:在需要的地方使用代码“android:background=“@drawable/my_button_bg”,例如:

 <Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Your Text"
    android:background="@drawable/my_button_bg"
    />

原文由 Pedantic 发布,翻译遵循 CC BY-SA 3.0 许可协议

对于 Material 组件库,只需使用 MaterialButtonWidget.MaterialComponents.Button.OutlinedButton 样式。

您可以使用 strokeColorstrokeWidth 属性自定义颜色和宽度

<com.google.android.material.button.MaterialButton
   ....
   style="?attr/materialButtonOutlinedStyle"
   app:strokeColor="@color/colorPrimary"/>

在此处输入图像描述


使用 Jetpack 组合 使用 OutlinedButton 。使用 border 属性自定义宽度和颜色。

 OutlinedButton(
    onClick = { },
    border = BorderStroke(1.dp, Color.Blue),
) {
    Text(text = "BORDER")
}

在此处输入图像描述

原文由 Gabriele Mariotti 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题