【问题标题】:ios Send Latitude and Longitude to WebViewios发送经纬度到WebView
【发布时间】:2014-02-20 23:51:23
【问题描述】:

我在我的应用中使用位置管理器来获取纬度和经度:

double latitude = locationManager.location.coordinate.latitude;
double longitude = locationManager.location.coordinate.longitude;

在同一个视图控制器中,我加载了一个 WebView:

NSString *URL = [[NSString alloc]initWithFormat:@"http://myurl.com"];
NSURL *urlDisplay = [NSURL URLWithString:URL];
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:urlDisplay];
[_mainWebView loadRequest:urlDisplay];

我的问题是:如何将我的纬度和经度传递给 WebView,以便在页面加载时使用。我需要根据用户的位置更改 WebView 中显示的信息。

【问题讨论】:

  • 这完全取决于 HTML 如何获取坐标。是否需要附加到 URL 的参数?还是要在 cookie 中发送坐标?还是?
  • 我想这就是我要问的。我需要在我的 web php 文件中使用坐标。让他们到达那里的最佳方式是什么?
  • 网页会不断更新,还是您可以在第一次加载页面时传入坐标?
  • 只是初始加载

标签: javascript ios webview


【解决方案1】:

也许我误解了你的问题......你只是在问如何将纬度和经度传递给 URL 以在 webview 中使用。这很容易(而且与 iOS 无关)。

使用 Google 地图,您可以使用如下 URL 搜索字符串按纬度和经度进行搜索:

https://maps.google.com/maps?q=43.661383,-79.390862

如果您想使用 Bing 地图,同样的做法是:

http://bing.com/maps/default.aspx?cp=43.661383~-79.390862

(位置是多伦多的皇后公园。)有关使用 Bing 进行地理搜索的更多信息位于此处: http://msdn.microsoft.com/en-us/library/dn217138.aspx

如果您想使用其他服务,只需弄清楚他们的搜索字符串是如何工作的。所以如果你想打开一个谷歌地图网页,你可以使用这样的东西:

NSArray *geoLocation = [NSArray arrayWithObjects:latitude, longitude, nil];
NSString *searchString = [geoLocation componentsJoinedByString:@","]; 
NSString *google = @"https://maps.google.com/maps?q=";
NSString *URL = [google stringByAppendingString:searchString];
NSURL *urlDisplay = [NSURL URLWithString:URL];

顺便说一句 - 如果您只想按地理位置显示地图,您可以使用 MapKit .... 但我相信您已经知道并想做一些不同的事情。

【讨论】:

  • 这不是我要找的。我从 iOS 的位置管理器中捕获纬度和经度,我需要在加载之前将其发送到 WebView。
  • 我不清楚(似乎其他人也是如此)“在加载之前将其发送到 WebView”是什么意思。我上面写的代码可以用来在加载之前将纬度和经度传递给 WebView,如果你想做的是在 URL 中传递 PHP 变量。我不确定您如何/为什么要将变量传递给 UIWebView?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-26
  • 1970-01-01
  • 2016-03-15
  • 1970-01-01
  • 2013-09-09
  • 1970-01-01
相关资源
最近更新 更多