可以使用以下代码示例来显示或隐藏一个Callout。
首先,需要创建一个UIButton并设置其点击事件。在点击事件中,可以使用UIView的isHidden
属性来控制Callout的显示和隐藏。
Objective-C示例代码:
// 创建一个UIButton
UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem];
[button setTitle:@"显示/隐藏Callout" forState:UIControlStateNormal];
[button addTarget:self action:@selector(buttonTapped:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:button];
// 创建一个Callout,使用UIView或者其他你自定义的Callout类
UIView *callout = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 200, 100)];
callout.backgroundColor = [UIColor redColor];
[self.view addSubview:callout];
// 点击事件处理方法
- (void)buttonTapped:(UIButton *)sender {
callout.hidden = !callout.hidden; // 切换Callout的显示/隐藏状态
}
Swift示例代码:
// 创建一个UIButton
let button = UIButton(type: .system)
button.setTitle("显示/隐藏Callout", for: .normal)
button.addTarget(self, action: #selector(buttonTapped(_:)), for: .touchUpInside)
self.view.addSubview(button)
// 创建一个Callout,使用UIView或者其他你自定义的Callout类
let callout = UIView(frame: CGRect(x: 100, y: 100, width: 200, height: 100))
callout.backgroundColor = UIColor.red
self.view.addSubview(callout)
// 点击事件处理方法
@objc func buttonTapped(_ sender: UIButton) {
callout.isHidden = !callout.isHidden // 切换Callout的显示/隐藏状态
}
通过点击按钮,可以切换Callout的显示和隐藏状态。