gpt4 book ai didi

android - 带边框的 Material 设计按钮

转载 作者:IT王子 更新时间:2023-10-28 23:33:58 26 4
gpt4 key购买 nike

我知道如何制作带有颜色填充的 Material Design 按钮:

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

无边框透明按钮:

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

但是,有没有办法让 Material design 有边框(内部透明)按钮?像下面这样的?

enter image description here

最佳答案

您也可以使用 Material Components for Android .

添加 the dependency到你的 build.gradle:

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

在这种情况下,您可以使用 MaterialButton在您的布局文件中:

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

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

在您的情况下,使用 app:cornerRadius 属性来更改角半径的大小。这将用指定的尺寸修圆角。
使用 te 属性 app:strokeColorapp:strokeWidth 来改变边框的颜色和宽度。< br/> 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以及所有安卓规范here .


通过 jetpack compose,您可以使用 OutlinedButtonborder 属性:

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

enter image description here


OLD(支持库)

使用新的 Support Library 28.0.0 ,设计库现在包含 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: 按钮描边的宽度

还有

关于android - 带边框的 Material 设计按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37395697/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com