我添加了一个带按钮的视图作为MKAnnotationView的子视图
CCBigBubleViewController* buble = [[CCBigBubleViewController alloc] init];
[annotationView addSubView:buble.view];
它显示完美,但按钮不响应敲击。
答案 0 :(得分:4)
在MKAnnotationView的实现中,覆盖hitTest方法:
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
{
if (CGRectContainsPoint(_button.frame, point)) {
return _button;
}
return [super hitTest:point withEvent:event];
}
然后,您的按钮将接收触摸事件。
答案 1 :(得分:3)
您的annotationView的大小可能不正确。其中的框架子视图不响应触摸。为了测试它,你可以剪辑到界限。
因此,请确保您的按钮位于AnnotationView的框架内,也许sizeToFit会在这里提供帮助。
答案 2 :(得分:0)
你必须在这样的编码中创建按钮动作
[buttonInstance addTarget:self action:@selector(youraction:) forControlEvents:UIControlEventTouchUpInside];