Как отключить взаимодействие пользователя со всей картой (MKMapView) в iOS? Я просто хочу отключить масштабирование, нажатие и т.д. И показать статическую карту. [self.mapView setUserInteractionEnabled:NO]
не работает. Не найдено никаких рабочих решений через Google или другие ответы здесь на Stack (ссылка PLS, если вы найдете рабочий ответ..). Ориентация на iOS 5. Там должен быть более простой способ сделать это.
Как отключить взаимодействие пользователя с MKMapView?
Ответ 1
Ключ должен отключить масштабирование и прокрутки, например:
self.mapView.zoomEnabled = false;
self.mapView.scrollEnabled = false;
self.mapView.userInteractionEnabled = false;
Ответ 2
Вы можете сделать это в Interface Builder следующим образом:
Ответ 3
Как насчет этого маленького взлома!
просто поместите UIView
поверх MKMapView
, имея все те же детали кадра. Также обратите внимание, что backgroundColor
этого представления должно быть clearColor
Ответ 4
Вы можете установить для включенного свойства MKAnnotationView значение NO
Для отключения масштабирования вы можете установить mapView.zoomEnabled = FALSE;
включен
Логическое значение, указывающее, включена ли аннотация.
@property (nonatomic, getter=isEnabled) BOOL enabled
Обсуждение
Значением по умолчанию этого свойства является ДА. Если значение этого свойства равно NO, в аннотационном представлении игнорируются события касания и не могут быть выбраны. Подклассы также могут отображать содержимое аннотации по-разному в зависимости от значения этого свойства.