Получение обратного вызова Какао / Objective-C от Google Maps с WebView - PullRequest
2 голосов
/ 09 февраля 2010

Я работаю над новой функцией для моего приложения Mac, которая связана с картами. В качестве примера давайте воспользуемся iPhoto «Places».

iPhoto использует Google Карты, чтобы показать расположение различных фотографий с красными булавками. Теперь, когда я нажимаю на один из этих выводов, само приложение - iPhoto - реагирует на этот щелчок, а не на WebView / карту. Поэтому, когда я нажимаю на булавку, вид меняется, и он показывает все фотографии в этом месте. Не на карте, а на другом экране в iPhoto. Поэтому я предполагаю, что iPhoto получает какой-то обратный вызов из JavaScript / Map, чтобы он мог изменить представление.

Это то, чего я пытаюсь достичь. Получение обратного вызова из Google Maps обратно в мой код Objective-C / Cocoa, чтобы я мог что-то изменить в своем приложении, а не на самой карте, в зависимости от маркера, на который нажал пользователь.

Спасибо за любую помощь, С уважением,

Matthias

1 Ответ

2 голосов
/ 09 февраля 2010

С UIWebView я не думаю, что есть прямой способ получить обратный вызов. Один грубый способ состоит в том, чтобы NSTimer периодически проверял состояние / значение переменной javascript на странице, вызывая stringByEvaluatingJavaScriptFromString. Исходя из значения, целевой код c может что-то делать. Однако я не рекомендую это.

Возможно, лучше использовать вместо этого MKMapView, который предоставит вам более простой и прямой доступ к карте (хотя MKMapView не обладает всеми функциями полнофункциональных Карт Google). Я не проверял это, но эта статья показывает способ определения, когда выбран пин-код MKAnnotation.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...