gpt4 book ai didi

ios - 如何在 iOS 的谷歌街景 SDK 中添加 UIImageView

转载 作者:行者123 更新时间:2023-11-29 01:49:50 24 4
gpt4 key购买 nike

@IBOutlet weak var getout: UIButton!
@IBOutlet weak var legstreet: UIImageView!
@IBOutlet weak var viewStreett: GMSPanoramaView!
var panoramaNear: CLLocationCoordinate2D!
override func viewDidLoad() {
super.viewDidLoad()
panoramaNear = CLLocationCoordinate2DMake(30.274262, -97.752371)
//var panoramaNear = self.tmpString
var panoView = GMSPanoramaView.panoramaWithFrame(CGRectZero,
nearCoordinate:panoramaNear)
self.viewStreett = panoView
// Do any additional setup after loading the view.
}

我这样写的时候,街景是显示不出来的。我必须修改self.viewStreett = panoView 改为self.view = panoView. 但是此时UIImageView消失了。所以我的问题是如何将 UIImageView 添加到街景中并且不干扰街景的使用。

最佳答案

您的 viewStreet 将是一个正在加载的 GMSPanoramaView,因为它没有坐标。所以你不能使加载 GMSPanoramaView 等于你的 panoView(viewStreet = panoView 不会工作)。

相反,您可以将 viewStreet 的类型更改为 UIView,现在它的行为类似于您的 panoView 的容器 View 。然后你可以执行 viewStreet.addSubview(panoView) 将你的 panoView 添加到容器中。

示例代码:

    @IBOutlet weak var viewStreet: UIView!
@IBOutlet weak var sampleImageView: UIImageView!
var panoView: GMSPanoramaView!

override func viewDidLoad() {
super.viewDidLoad()

let panoramaNear = CLLocationCoordinate2DMake(30.274262, -97.752371)

panoView = GMSPanoramaView.panoramaWithFrame(CGRectZero,
nearCoordinate:panoramaNear)

viewStreet.addSubview(panoView)
viewStreet.sendSubviewToBack(panoView)

let equalWidth = NSLayoutConstraint(item: panoView, attribute: .Width, relatedBy: .Equal, toItem: viewStreet, attribute: .Width, multiplier: 1.0, constant: 0)
let equalHeight = NSLayoutConstraint(item: panoView, attribute: .Height, relatedBy: .Equal, toItem: viewStreet, attribute: .Height, multiplier: 1.0, constant: 0)
let top = NSLayoutConstraint(item: panoView, attribute: .Top, relatedBy: .Equal, toItem: viewStreet, attribute: .Top, multiplier: 1.0, constant: 0)
let left = NSLayoutConstraint(item: panoView, attribute: .Left, relatedBy: .Equal, toItem: viewStreet, attribute: .Left, multiplier: 1.0, constant: 0)

panoView.setTranslatesAutoresizingMaskIntoConstraints(false)
NSLayoutConstraint.activateConstraints([equalWidth, equalHeight, top, left])
}

如果您在应用中使用 AutoLayout,则应向 panoView 添加宽度、高度、顶部和左侧约束。

您可以在 this GitHub page 中查看示例应用程序.

在下面的模拟器屏幕截图中,我只是在 panoView 顶部添加了一个标记图像。 enter image description here

关于ios - 如何在 iOS 的谷歌街景 SDK 中添加 UIImageView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31530042/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com