[英]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.