如何让按钮的角变圆?
我想让按钮
的角变圆。在 Android 中是否有一种简单的方法可以实现这一点?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我想让按钮
的角变圆。在 Android 中是否有一种简单的方法可以实现这一点?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(20)
使用该属性:
Use this attribute:
您还可以使用如下所示的卡片布局
You can also use the card layout like below
图片
image
在可绘制对象中创建 XML 文件并将按钮背景设置为此文件。
XML文件代码例如:
create XML file in drawable and set button background to this file.
XML file code for example:
普通
Button
标记有一个app:cornerRadius
属性。There is a
app:cornerRadius
attribute for the normalButton
tag.如果您使用的是矢量绘图,那么您只需指定一个 即可。您的可绘制定义中的元素。我在博客文章中对此进行了介绍。
如果您使用位图/9 块可绘制对象,那么您需要在位图图像中创建具有透明度的角。
if you are using vector drawables, then you simply need to specify a <corners> element in your drawable definition. I have covered this in a blog post.
If you are using bitmap / 9-patch drawables then you'll need to create the corners with transparency in the bitmap image.
这是一个简单的 CardView。您可以将 Button 的角设为圆形。您可以设置卡的角半径并使用卡的其他功能,例如标高。
This is a simple CardView. You can make the corner of your Button round. You can set the corner radius of the Card and use other features of the Card such as elevation.
使用此属性:
喜欢
Use this attribute:
Like
在Drawable文件夹中创建rounded_btn.xml文件...
并使用this.xml文件作为按钮背景
Create rounded_btn.xml file in Drawable folder...
and use this.xml file as a button background
来自材料设计的新方法
您所需要的就是这个属性cornerRadius
旧方法
可绘制文件夹
布局文件夹
确保添加样式以避免方形背景
New method from material design
all you will need is this attribute cornerRadius
Old method
Drawable Folder
Layout Folder
Make sure to add style to avoid square background
带图标的样式按钮
shape.xml
style button with icon
shape.xml
此链接包含您需要的所有信息。
此处
Shape.xml
和 main.xml
这应该给你你想要的结果。
祝你好运
This link has all the information you need.
Here
Shape.xml
and main.xml
This should give you your desired result.
Best of luck
如果您想更改角半径并希望在按下时在按钮中产生波纹效果,请使用以下命令:-
If you want change corner radius as well as want a ripple effect in button when pressed use this:-
创建一个如下所示的 XML 文件。将其设置为按钮的背景。如果您需要更多的按钮曲线,请根据您的意愿更改半径属性。
button_background.xml
设置按钮背景:
Create an XML file like below one. Set it as background for the button. Change the radius attribute to your wish, if you need more curve for the button.
button_background.xml
Set background to your button:
创建 shape.xml
在可绘制文件夹(例如 shape.xml )
和 myactivity.xml 中
您可以使用
create shape.xml in drawable folder
like shape.xml
and in myactivity.xml
you can use
创建文件 myButton.xml
添加到您的按钮
Create file myButton.xml
add to your button
我发现的简单方法是在可绘制文件夹中创建一个新的 xml 文件,然后将按钮背景指向该 xml 文件。这是我使用的代码:
Simple way i found out was to make a new xml file in the drawable folder and then point the buttons background to that xml file. heres the code i used:
在可绘制文件夹中创建一个 xml 文件,如下所示,
将其作为背景应用到要使角变圆的按钮。
或者您可以为每个角使用单独的半径,如下所示
Create a xml file in drawable folder like below
Apply this as background to button you want make corners round.
Or you can use separate radius for every corner like below
通过 Jetpack Compose,您可以使用
shape
参数:使用 材质组件库您可以使用
MaterialButton
与app:cornerRadius
< /strong> 属性。类似于:
获得一个带有圆角的 Button 就足够了。
您可以使用材质按钮之一 样式。
例如:
另外,从版本1.1.0开始,您还可以更改按钮的形状。只需在按钮样式中使用
shapeAppearanceOverlay
属性:然后只需使用:
您还可以在 xml 布局中应用
shapeAppearanceOverlay
:shapeAppearance
还允许每个角具有不同的形状和尺寸:With Jetpack Compose you can use the
shape
parameter:With the Material Components library you can use the
MaterialButton
with theapp:cornerRadius
attribute.Something like:
It is enough to obtain a Button with rounded corners.
You can use one of Material button styles.
For example:
Also starting from the version 1.1.0 you can also change the shape of your button. Just use the
shapeAppearanceOverlay
attribute in the button style:Then just use:
You can also apply the
shapeAppearanceOverlay
in the xml layout:The
shapeAppearance
allows also to have different shape and dimension for each corner:如果您想要这样的
这里是代码。
1. 在您的可绘制文件夹中创建一个 xml 文件(如 mybutton.xml)并粘贴以下标记:
2. 现在使用此可绘制作为视图的背景。如果视图是按钮,则如下所示:
If you want something like this
here is the code.
1.Create a xml file in your drawable folder like mybutton.xml and paste the following markup:
2.Now use this drawable for the background of your view. If the view is button then something like this: