- 判定触摸点是否在圆形范围之内
本例所实现的判定机制采用的是基本的几何运算,也就是检查触摸点是不是在圆形的半径之内
- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event {
CGPoint pt;
float halfSide = 50.0f / 2.0f; //50.0f为UIButton的宽*高
pt.x = (point.x - halfSide) / halfSide;
pt.y = (point.y - halfSide) / halfSide;
float xsquared = pt.x * pt.x;
float ysquared = pt.y * pt.y;
if((xsquared + ysquared) < 1.0) return YES;
return NO;
}
- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
NSLog(@"++++ Valid Touch Events ++++");
}
网友评论