Обеспечение воспроизведения звука и совместное использование вида карты не должно быть проблемой. Хотя ваше приложение не будет воспроизводить аудио "из mapView". Он будет использовать элемент управления MKMapView
и отправлять вызовы аудио API, когда пользователь взаимодействует с картой.
Вы можете добавить горячие точки как аннотации карты, используя класс MKPointAnnotation
или свой собственный класс, который реализует протокол MKAnnotation
.
Ваше приложение может обнаруживать, когда аннотация используется в методе делегата представления карты didSelectAnnotationView
(см. MKMapViewDelegate
), или, возможно, лучше добавить кнопку раскрытия в представлении выноски аннотации и обнаруживать нажатие этой кнопки с использованием метода делегата calloutAccessoryControlTapped
.
Так, например: приложение добавляет контакты (или пользовательские изображения) для каждой точки доступа, пользователь нажимает на значок, всплывающее окно всплывающей подсказки с названием точки доступа и кнопкой раскрытия (синий кружок со стрелкой), пользователь нажимает на кнопку, карта вызывает делегата способ.
В этих методах делегатов представления карты вы можете сказать, какая аннотация была выбрана, используя view.annotation
, а затем на основе title
аннотации или некоторого пользовательского свойства воспроизвести соответствующий звук.
Для простого воспроизведения звука вы можете использовать класс AVAudioPlayer
.