带边框的材质设计按钮

2024-01-28

我知道如何制作带有颜色填充的材料设计按钮:

style="@style/Widget.AppCompat.Button.Colored"

还有无边框透明按钮:

style="@style/Widget.AppCompat.Button.Borderless.Colored"

然而,有没有办法让Material design有边框(内部透明)按钮呢?像下面这样的东西?


您还可以使用Android 的材质组件 https://github.com/material-components/material-components-android.

Add 依赖性 https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md给你的build.gradle:

dependencies { implementation 'com.google.android.material:material:1.3.0' }

在这种情况下,您可以使用MaterialButton https://github.com/material-components/material-components-android/blob/master/docs/components/MaterialButton.md在你的布局文件中:

<com.google.android.material.button.MaterialButton
   ....
   style="@style/Widget.MaterialComponents.Button.OutlinedButton"
   app:cornerRadius=".."
   app:strokeColor="@color/colorPrimary"/>

应用样式@style/Widget.MaterialComponents.Button.OutlinedButton http://@style/Widget.MaterialComponents.Button.OutlinedButton.

In your case use the app:cornerRadius attribute to change the size of corner radius. This will round off the corners with specified dimensions.
Use te attribute app:strokeColor and app:strokeWidth to change the color and the width of the border.
enter image description here

您还可以使用自定义角ShapeApperance(需要1.1.0版本)

<style name="MyButton" parent="Widget.MaterialComponents.Button.OutlinedButton">
    <item name="shapeAppearanceOverlay">@style/MyShapeAppearance</item>
</style>
<style name="MyShapeAppearance" parent="">
    <item name="cornerFamilyTopLeft">rounded</item>
    <item name="cornerFamilyBottomLeft">rounded</item>
    <item name="cornerFamilyTopRight">cut</item>
    <item name="cornerFamilyBottomRight">cut</item>
    <item name="cornerSize">8dp</item>
</style>

官方文档是here https://developer.android.com/reference/com/google/android/material/button/MaterialButton以及所有 Android 规格here https://material.io/develop/android/components/material-button/.


With 喷气背包组成你可以使用OutlinedButtonborder属性:

    OutlinedButton(
        onClick = { },
        border = BorderStroke(1.dp, Color.Blue),
        shape = RoundedCornerShape(8.dp) 
    ) {
        Text(text = "Save")
    }

旧(支持库)

随着新支持库28.0.0 https://developer.android.com/topic/libraries/support-library/revisions.html#28-0-0-alpha1,设计库现在包含Material Button.

您可以使用以下命令将此按钮添加到我们的布局文件中:

<android.support.design.button.MaterialButton
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="XXXX"
    android:textSize="18sp"
    app:icon="@drawable/ic_android_white_24dp" />

您可以使用以下属性自定义按钮:

  • app:backgroundTint: 用于对按钮的背景应用色调。如果您想更改按钮的背景颜色,请使用此属性而不是背景。

  • app:strokeColor:按钮描边使用的颜色

  • app:strokeWidth: 按钮行程所使用的宽度

Also

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

带边框的材质设计按钮 的相关文章

  • ImageView 中的全尺寸图像

    我正在尝试在 ImageView 中绘制图像 但我希望它不缩放 并根据需要使用滚动条 我怎样才能做到这一点 现在我只有一个可绘制集作为 XML 中 ImageView 的 android src 这会自动缩放图像以适应屏幕宽度 我读到这可能
  • 如何改变android中menuItem的背景颜色?

    我正在以编程方式将菜单项添加到菜单中 我想在选择特定项目时添加背景颜色 如何为 menuItem 添加背景 您的回答将不胜感激 虽然其他答案提供了更改样式 这会影响all菜单项 据我了解 需要更改一个菜单项 我建议你使用android ac
  • 检查双精度值的等于和不等于条件

    我在比较两者时遇到困难double values using and 我创建了 6 个双变量并尝试进行比较If健康 状况 double a b c d e f if a b c d e f My code here in case of t
  • 查找回收器视图中的第一个可见项目是否是列表的第一项

    我有一个包含 13 个数据项的回收器视图 我想知道列表中的第一项是否可见 我知道像这样的方法findFirstVisibleItemPosition and findLastVisibleItemPosition但他们没有说明第一个可见项目
  • 启动 Twitter 应用程序 [重复]

    这个问题在这里已经有答案了 可能的重复 Twitter 应用程序的 Android Intent https stackoverflow com questions 2077008 android intent for twitter ap
  • 无法解析符号 FlutterActivity

    我使用 VCS gt Checkout from Version Control 将 flutter 项目从 github 导入到 Android Studio 中 现在我面临的问题是 Cannot resolve symbol Flutt
  • Android SDK 中可用的所有“android.intent.action”操作的详尽列表是什么?

    大家好 我想知道标准 Android SDK 中定义的所有 Intent 操作是否有详尽的参考 我正在考虑完整的 android intent action someaction 名称 而不是 Intent 类中定义的方便别名操作的限制列表
  • Android - 除了普通 SSL 证书之外还验证自签名证书

    我有一个通过 SSL 调用 Web 服务的 Android 应用程序 在生产中 我们将拥有由受信任的 CA 签名的普通 SSL 证书 但是 我们需要能够支持自签名证书 由我们自己的 CA 签名 我已经成功实施了接受自签名证书的建议解决方案
  • 服务器到 Firebase HTTP POST 结果为响应消息 200

    使用 Java 代码 向下滚动查看 我使用 FCM 向我的 Android 发送通知消息 当提供正确的服务器密钥令牌时 我收到如下所示的响应消息 之后从 FCM 收到以下响应消息 Response 200 Success Message m
  • Locale.getDefault().getCountry() 返回空字符串

    我正在尝试使用国家 地区代码获取用户语言 例如en US es es 但是当我使用Locale getDefault getCountry 它返回空字符串 虽然它给了我正确的语言Locale getDefault getLanguage N
  • 当参数具有默认值时,为什么无法使用导航组件将参数传递给片段?

    我正在使用导航组件 但我不明白为什么如果定义了参数 则将参数传递给下面的方法时会出现错误 我正在使用 SafeArgs 只有当我为此参数定义默认值时才会出现此错误 有人可以解释一下为什么会发生这种情况以及如何解决它吗 这是导航图的部分代码
  • Facebook LoginActivity 未正确显示

    我有一个使用 Facebook 登录的应用程序 我有 FacebookSDK 并且使用 com facebook LoginActivity 问题是 在 10 英寸平板电脑上 当显示软键盘时 活动无法正确显示 我使用的是 Samsung G
  • 版本 5 上带有 getBackground().setAlpha 的按钮 - 棒棒糖无法正常工作

    我有这段代码 适用于自 API 14 以来的每个版本 但在 Android 5 0 Lollipop 上无法正常工作 以下是我希望按钮出现的方式 单击按钮1 buttonArrivals getBackground setAlpha 180
  • 如何从SurfaceView绘制到Canvas?

    我正在尝试做简单的画家 问题是Android看起来有三个独立的Canvas并给我它来顺序绘制 我用以下方式制作了用户界面SurfaceView 把霍尔德从中拿走 Override protected void onCreate Bundle
  • 点击监听器的公共类

    我的所有 6 项活动中有 7 个按钮 所有 6 个按钮在所有活动中都具有相同的功能 如何为这 6 个按钮执行通用的单击事件侦听器 您可以创建一个实现 View OnClickListener 的新类 如下所示 public class My
  • 如何在android中录制音频时暂停背景音乐

    我正在 Android 中开发一个音频记录应用程序 因此 如果设备音乐播放器中已播放任何背景音乐 则应在开始录制之前暂停该背景音乐 并且每当录制停止或暂停时 背景音乐都应恢复 播放录制的音频时也应该如此 有人可以帮我解决这个问题吗 提前致谢
  • 如何在android sdk上使用PowerMock

    我想为我的 android 项目编写一些单元测试和仪器测试 然而 我遇到了一个困扰我一段时间的问题 我需要模拟静态方法并伪造返回值来测试项目 经过一些论坛的调查 唯一的方法是使用PowerMock来模拟静态方法 这是我的 gradle 的一
  • Jetpack Compose 部分或开放侧边框

    我正在尝试绘制部分或一侧开放的矩形圆形边框以实现此效果 玩了一下之后我得到了这个 这是通过以下方式完成的 RoundedCornerShape topStartPercent 50 bottomStartPercent 50 start R
  • OpenGL ES 2.0 屏幕闪烁

    我面临着一个大问题 我正在使用带有 Android 4 0 3 的 Transformer tf101 选项卡 我的应用程序使用自定义 OpenGL ES 2 0 表面 我正在用纹理渲染多个平面 该纹理大约发生变化 每秒 20 次 并通过传
  • 修改 ADW Android 启动器?

    我想更改和修改开源 ADW 启动器 启动器可在此处获取 https github com AnderWeb android packages apps Launcher https github com AnderWeb android p

随机推荐

  • 如何设置的高度

    有谁知道如何设置高度
  • Javascript 找不到我的 mod_rewrite 查询字符串!

    我使用以下 javascript 类从查询字符串中提取变量 getUrlVars function var vars var parts window location href replace gi function m key valu
  • 错误 TS2741:类型中缺少属性

    在文件 models User model ts 见下文 中 我尝试设置方法 isEqual 如下面的代码所示 有人可以更正我的代码吗 文件模型 User model ts export class User constructor pub
  • 如何使用Spring、Hibernate将具有自动值的数据插入createdDate和updatedDate?

    我想通过自动插入created at日期时间和相应的updated at日期时间来插入数据 我有一个 pojo Id GeneratedValue strategy GenerationType IDENTITY Basic optiona
  • 无法在 TestFlight 上下载我自己的测试版

    我在使用 TestFlight 时遇到问题 我在AppStore上有一个应用程序 我总是先在TestFlight上启动测试版 测试该应用程序一段时间 然后发布它 然而 在我推出的最新测试版中 它不允许我下载它 因为它显示 请求的应用程序不可
  • 在react-redux项目中安装节点包时出现“错误:找不到模块‘internal/util/types’”

    我正在学习 Redux 并且在初始项目设置期间每当尝试安装节点包时都会遇到此错误 Error Cannot find module internal util types at Function Module resolveFilename
  • 未找到 RealmLog 本机实现

    我正在尝试使用 Realm 移动数据库 但有一些问题 我安装了领域对象服务器 并尝试创建一个活动的使用 这是我的注册活动 public class RegisterActivity extends AppCompatActivity imp
  • 如何将“where not”添加到 QueryBuilder 查询

    我想搜索整个内容树 但不搜索基础上具有 不搜索 属性的特定树 The 查询生成器 API http dev day com docs en cq 5 4 dam customizing and extendingcq5dam query b
  • Android / Java:检查 url 是否是有效的 youtube url

    我想检查一个网址是否是有效的 YouTube 网址 以便我可以在视图中显示 否则我将隐藏视图 Java中有没有正则表达式可以帮助我检查url是否有效 目前我正在使用这个正则表达式 但我想它不是我想要的 String youTubeURl h
  • 为什么 NHibernate 需要将不可设置的成员设为虚拟?

    NHibernate 不仅要求域的可设置属性是虚拟的 而且还要求仅获取属性和方法 有谁知道这是什么原因 我无法想象可能的用途 原因是延迟加载 为了使延迟加载成为可能 创建了代理类 它must拦截来自 外部 的每个调用 以便在执行实际方法 属
  • 在 SQL Server 中创建和修改的序列号

    我需要向应用程序中的大多数实体添加序列号 因为我将并行运行 Lucene 搜索索引 我不需要运行持续的轮询过程 或者通过我的应用程序手动运行我的索引器 我正在考虑以下内容 Add a Created默认值为GETUTCDATE Add a
  • 如何验证 DataRow 对象中是否存在该列?

    private int EmploymentID get set private void MapFields DataRow row if row HasError EmploymentID Convert ToInt32 row Emp
  • React:为什么页面刷新时 state 或 props 为 null?

    我在页面的左框架上显示树视图 树是从 xml 文件生成的 单击每个节点时 组件将在页面的右侧框架中打开 ProductsTreeView 是树组件 Add Category 是单击树节点之一时将打开的组件 我通过路由传递道具 只要页面不刷新
  • 获取 BLE 设备的响应

    我对使用蓝牙设备还很陌生 到目前为止一切都很完美 但有一个问题我不知道如何处理 我有一个 LED 灯设备 我可以改变一切 从颜色到速度 闪烁 褪色等等 现在我想读取当前的设备状态 例如设备是打开还是关闭 我有一份该设备的文件 上面写着 询问
  • KLT 在 OpenCV 中如何工作?

    我很好奇 openCV 中 KLT 背后的逻辑 据我所知 OpenCV中发送的用于寻找光流的图像首先被转换为灰度 我很好奇的是 在运行算法时 我们需要一组用于计算的特征 openCV中求光流法有哪些特点 谢谢 光流有两种类型 密与疏 密集查
  • 使用标准的类型错误

    我阅读了文档和一些讨论该包的文章 但我是 Haskell 的新手 不太了解 但我尝试过 以下是我所做的 module Main where LANGUAGE BangPatterns import Control Parallel par
  • 性能计数器类别名称? (C#)

    我正在尝试将性能计数器编程到我的 C 应用程序中 该应用程序启动另一个进程并检查该启动进程的处理器使用情况 据我了解 性能计数器类要求我分配类别名称 计数器名称和进程名称 我可以很容易地获得进程名称 但是互联网上是否有某种列表包含我可以分配
  • Xcode Playground 上的 SwiftUI 和 foreach 问题

    我试图在 SwiftUI 中执行一个简单的代码 但它显示错误 执行被中断 原因 信号 SIGABRT 这是一个代码 struct ContentView View let data 1 100 map Item 0 let columns
  • 如何在 Mac Excel 2011 上创建 Web 查询?

    我正在尝试从工作表上的网站导入数据 但是当我单击从新数据库查询导入数据时 它显示错误 未安装 Microsoft Query 我到处搜索但找不到解决方案 请帮帮我 Mac 上的过程有点不同 在 Finder 中 转到 Application
  • 带边框的材质设计按钮

    我知道如何制作带有颜色填充的材料设计按钮 style style Widget AppCompat Button Colored 还有无边框透明按钮 style style Widget AppCompat Button Borderles