【问题标题】:Google Maps Place Picker iOS Swift谷歌地图地点选择器 iOS Swift
【发布时间】:2015-07-03 23:04:30
【问题描述】:

我正在 Swift 中实现谷歌地图地点选择器。 google 提供的地点选择器会自动显示一个带有导航栏的视图控制器。当我选择位置或按下导航栏上的后退按钮时,视图控制器立即消失,没有任何过渡。我似乎根本无法通过地点选择器 API 访问导航栏。我怎样才能关闭带有动画的 placepicker 视图控制器,或者访问导航栏?我很茫然。当我按下按钮时,我的代码会调出地点选择器:

    @IBAction func pickPlace(sender: UIButton) {
    if let mapView = self.mapView {

        let visibleRegion = mapView.projection.visibleRegion()
        let viewport = GMSCoordinateBounds(coordinate: visibleRegion.farLeft, coordinate: visibleRegion.nearRight)
        let config = GMSPlacePickerConfig(viewport: viewport)
        placePicker = GMSPlacePicker(config: config)
        placePicker.pickPlaceWithCallback { (place: GMSPlace?, error: NSError?) -> Void in
            if error != nil {
                println("Error picking place: \(error!.localizedDescription)")
                return
            }
            if place != nil {
                self.userLocationTextField.text = place!.name
                println("Place name \(place!.name)")
                println("Place address \(place!.formattedAddress)")
                println("Place attributions \(place!.attributions)")


                let marker = GMSMarker(position: place!.coordinate)
            } else {
                println("No place selected")
            }
        }
    }

我可以访问地点选择器视图控制器的唯一方法是使用以下代码:

    let topVC = UIApplication.sharedApplication().keyWindow?.rootViewController

但即使使用该代码,我也无法更改导航栏或使视图控制器通过动画消失。

【问题讨论】:

  • 我遇到了同样的问题。你有没有设法解决这个问题?
  • 很遗憾,我无法修复它
  • 我也有同样的问题。你找到导航问题的解决方案了吗?

标签: ios swift google-maps google-places-api


【解决方案1】:

我也遇到了同样的问题,我已经使用下面的代码解决了。 我在下面的代码中编写了适当的选择器按钮操作方法

UINavigationBar.appearance().barTintColor = YOURCOLOR
UINavigationBar.appearance().isTranslucent = false

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-12
    • 2019-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多