我有一个 View (圆圈),它在不同的坐标处显示一组圆圈。我已经通过单个解析查询加载了圆的坐标。我可以添加一个点击手势识别器,该识别器在点击 View (圆圈)时执行功能。
(例如,如果我点击其中一个圆圈,所有圆圈都会从蓝色变为红色)
但是,我无法弄清楚如何根据我点击的圆圈(不同的坐标)执行不同的函数,而不是在点击任何圆圈时一致执行函数。
(例如,如果我点击左上角的圆圈,它会从蓝色变为绿色,而如果我点击左下角的圆圈,它会从蓝色变为红色)
我正在考虑建立一个系统,如果点击的坐标是 x 和 y 等等,它就能执行某种功能。然而,我还不知道如何去做,并且希望能得到任何帮助。
最佳答案
执行此操作的简单(且优雅)方法是让每个圆圈都有自己的 View ,并为每个圆圈提供自己的点击手势处理程序。但是,如果您想保留当前的方法,请将每个圆圈绘制为 UIBezierPath
,其中具有可用于 HitTest 的 containsPoint()
方法。
关于swift - 在 View 的不同部分点击时如何执行不同的功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32185211/