Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用WebView从Google地图获取Cocoa/Objective-C回调_Objective C_Cocoa_Callback_Maps - Fatal编程技术网

使用WebView从Google地图获取Cocoa/Objective-C回调

使用WebView从Google地图获取Cocoa/Objective-C回调,objective-c,cocoa,callback,maps,Objective C,Cocoa,Callback,Maps,我正在为我的Mac应用程序开发一个新功能,它与地图有关。例如,让我们使用iPhoto的Places iPhoto使用谷歌地图(Google Maps)以红色别针显示各种照片的位置。 现在,当我点击其中一个PIN时,应用程序本身——iPhoto——会对点击做出反应,而不是WebView/地图。因此,当我点击一个pin时,视图会发生变化,并显示该位置的所有照片。不是在地图上,而是在iPhoto的另一个屏幕上。因此,我假设iPhoto从JavaScript/Map获得某种回调,以便它可以更改视图 这就

我正在为我的Mac应用程序开发一个新功能,它与地图有关。例如,让我们使用iPhoto的Places

iPhoto使用谷歌地图(Google Maps)以红色别针显示各种照片的位置。 现在,当我点击其中一个PIN时,应用程序本身——iPhoto——会对点击做出反应,而不是WebView/地图。因此,当我点击一个pin时,视图会发生变化,并显示该位置的所有照片。不是在地图上,而是在iPhoto的另一个屏幕上。因此,我假设iPhoto从JavaScript/Map获得某种回调,以便它可以更改视图

这就是我想要达到的目标。从GoogleMaps获取回调返回到我的Objective-C/Cocoa代码中,这样我就可以根据用户单击的标记更改应用程序内部的内容,而不是地图本身

谢谢你的帮助,亲切的问候


Matthias

使用UIWebView,我认为没有直接的方法获得回调。一种粗略的方法是让NSTimer通过调用stringByEvaluatingJavaScriptFromString定期检查页面中javascript变量的状态/值。基于这个值,目标c代码可以做一些事情。但是,我不建议这样做


使用MKMapView可能会更好,这将使您更容易、更直接地访问地图,尽管MKMapView不具备完整谷歌地图的所有功能。我没有对此进行测试,但显示了一种检测何时选择了MKAnnotation pin的方法。

哦,该死,我应该提到这是针对Mac的。但是谢谢你的链接,我会查出来的。据我所知,Mac上没有MKMapView…在Mac上,这似乎可以使用WebKit实现。看,上面说我不能通过JavaScript访问Objective-C属性等。。。奇怪的苹果是如何做到的?我想他们的意思是,只有你的应用程序在WebKit中托管的页面上的javascript才能做到这一点。它不允许Safari say中运行的javascript调用objC。哦,伙计,对不起。我误解了你链接的文件的第一句话。我知道是怎么做的。谢谢你的时间和耐心!