android-如何定义圆内的可触摸区域

android-如何定义圆内的可触摸区域,android,button,opengl-es,android-canvas,geometry,Android,Button,Opengl Es,Android Canvas,Geometry,我目前正在尝试创建一个圆(通过画布绘制、opengl或drawable),并在其中定义4-5个按钮。我的第一个想法是创建一些可绘制区域(四分之一的圆)并将其覆盖在主圆上,但随后我会将可触摸区域设置得太大,例如在主圆的中间 有没有人尝试过这个方法并找到了一个合适的解决方案?您可以在自定义的视图中覆盖绘制圆圈(和其他按钮图形)的onTouch(),并在获得手指向下事件时做一些简单的数学运算,以确定用户是否已触到圆圈内,以及圆圈内定义的特定区域。也想到了这一点,但我希望能找到一个更优雅的解决方案,因为

我目前正在尝试创建一个圆(通过画布绘制、opengl或drawable),并在其中定义4-5个按钮。我的第一个想法是创建一些可绘制区域(四分之一的圆)并将其覆盖在主圆上,但随后我会将可触摸区域设置得太大,例如在主圆的中间


有没有人尝试过这个方法并找到了一个合适的解决方案?

您可以在自定义的
视图中覆盖绘制圆圈(和其他按钮图形)的
onTouch()
,并在获得手指向下事件时做一些简单的数学运算,以确定用户是否已触到圆圈内,以及圆圈内定义的特定区域。

也想到了这一点,但我希望能找到一个更优雅的解决方案,因为我也想在单击按钮后突出显示这些按钮。标记为正确答案,因为我找不到其他解决方案。