首页 > 解决方案 > 将纬度经度数据从另一个视图控制器传递到谷歌地图 - Swift

问题描述

我正在使用两个视图控制器,带有浮动面板 GitHub 库。https://github.com/SCENEE/FloatingPanel

1) MapViewController. 2) DataViewController.

MapViewController 仅包含 google map 和 google map 方法。

DataViewController 包含 tableview、数据模型和数据源。

在 MapViewController 上,我使用的是包含 DataViewController (tableView) 的 floatingPanel。

更新了代码:

数据视图控制器:

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)
    }

标签: iosswiftgoogle-mapsuitableviewpanel

解决方案


您可以使用从 DataViewController 到 MapViewController 的回调,在收到调用后更新 MapViewController 中的视图


推荐阅读