ios - 将纬度经度数据从另一个视图控制器传递到谷歌地图 - Swift
问题描述
我正在使用两个视图控制器,带有浮动面板 GitHub 库。https://github.com/SCENEE/FloatingPanel
1) MapViewController.
2) DataViewController.
MapViewController 仅包含 google map 和 google map 方法。
DataViewController 包含 tableview、数据模型和数据源。
在 MapViewController 上,我使用的是包含 DataViewController (tableView) 的 floatingPanel。
- 问题:如何将纬度和经度数据传递给 MapViewController 以在谷歌地图上显示。请建议。
更新了代码:
数据视图控制器:
func loadFriend(withUid: String) {
let dataLatitude = aFriend.latitude
let dataLongtitude = aFriend.longitude
self.delegate?.sendDataToFirstViewController(mapLat: dataLatitude, mapLong: dataLongtitude)
self.tableView.reloadData()
})
}
委托 DataViewController:
protocol MyDataSendingDelegateProtocol {
func sendDataToFirstViewController(mapLat: Double, mapLong: Double)
}
类数据视图控制器:
var delegate: MyDataSendingDelegateProtocol? = nil
地图视图控制器:
class MapViewController: UIViewController, CLLocationManagerDelegate, FloatingPanelControllerDelegate, MyDataSendingDelegateProtocol {
MapViewController 上的委托调用:
func sendDataToFirstViewController(mapLat: Double, mapLong: Double) {
print(mapLat)
print(mapLong)
}
解决方案
您可以使用从 DataViewController 到 MapViewController 的回调,在收到调用后更新 MapViewController 中的视图
推荐阅读
- reactjs - 如何根据从 react.js 中的另一个选择选项中选择的值仅填充同级元素(选择选项)
- angular - 表单中下拉列表中的值没有被捕获和传递(Angular)
- php - 从 Google Cloud App Engine PHP 5.5 升级到 7.3 后如何让 Glob() 再次工作?
- algorithm - 用于从两个列表中生成一定长度的组合列表的 Scala 算法
- c - 从文件练习中读/写的执行问题(新手)
- python-2.7 - 使用 ChangeResourceRecordSets Boto3 删除/更新插入时,更改中缺少字段“SetIdentifier”
- php - Quickbooks 使用客户端 ID/客户端密码连接卖家 API 凭证——还有其他方法吗?
- java - NativeLongByReference 在 x64 操作系统上仅包含 32 位数字
- node.js - 错误:SyntaxError:JSON 中位置 0 的意外标记 B
- c++ - 使用 MariaDB C++ 连接器获取具有字段名称的 SELECT 字段类型