繁体   English   中英

如何在android中创建自定义形状的按钮

[英]how to create custom shaped buttons in android

我知道这个问题是重复的,但我想不出创建圆形,椭圆形等自定义形状按钮的解决方案。

疑点一:我的目标是仅在单击形状内的区域时执行操作,而不要在形状外进行任何操作(例如,仅圆形区域必须与侦听器连接)

怀疑2:我可以使用形状的png图片作为背景,还是只使用形状绘制它们? 请给我一个简单的解决方案...

提前致谢..

您可以使用ImageButtons并将椭圆形或圆形的图像设置为背景。 希望对您有所帮助

试试这个链接,它将帮助您创建自定义按钮。 http://angrytools.com/android/button/

所有您需要做的就是将button.xml文件保存在可绘制文件夹中,然后将按钮背景设置为

android:background="@drawable/button.xml"

您应该对作业使用ShapeDrawable 例如,如果您制作了一个圆圈按钮,则在圆圈区域之外单击将不会发生任何事情。

例如,在您的可绘制文件夹中,将xml文件设置为circle_button:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="oval">
    <solid android:color="#9F2200"/>
    <stroke android:width="2sp" android:color="#fff" />
</shape>

并在您的按钮中设置background="@drawable/circle_button"

正如@MSaudi所说,ShapeDrawable将为您提供形状的按钮。

如果您想使用PNG,那就更困难了。

我将通过扩展Button类并重写onTouchEvent方法来仅在所需形状内注册一次单击(可能通过检查视图在单击位置是否透明)来实现此目的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM