Пользовательские выноски отклоняются в MKMapView при нажатии
У меня есть вид карты и пользовательские выноски, созданные с нуля. Everything works fine except that the callout disappears whenever user taps on it.
1 ответ
Во-первых, убедитесь, что вы переопределите pointInside
в пользовательском представлении аннотации для учета выноски:
override func point(inside point: CGPoint, with event: UIEvent?) -> Bool {
if self.bounds.contains(point) {
return true
} else {
return self.subviews.contains { $0.frame.contains(point) }
}
}
Затем вид карты оказывается в пользу UIButton
в выноске и не отклонит, если касание ударит экземпляр UIButton
, Убедитесь, что вы закрываете весь вид выноски кнопкой (которая может или не может ничего сделать при нажатии).
Вы можете добавить подпредставления в UIButton
, но убедитесь, что у них всех есть isUserInteractionEnabled
установлен в false
,