我想创建自定义圆视图。
我制作了一个UIControl子类,并命名为CircleView。我已应用Corner Radius使其看起来像Circle。
circleView = [[CircleView alloc]initWithFrame:CGRectmake(0, 0 , 200, 200)];
接下来,我已经导入到根视图控制器,使用框架分配给我的根视图控制器上的显示。所以我的问题是,
当我触及视角时,它会对事件做出反应。为什么......?是可能的在半径圆中添加事件。
答案 0 :(得分:3)
无论您在该矩形内呈现什么形状,视图始终都是矩形。
要使圆圈视图仅响应圆圈内的事件,您需要覆盖hitTest:withEvent:
方法。
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event {
if (/* point is within circle */) {
return self;
} else {
return nil;
}
}