首页
学习
活动
专区
圈层
工具
发布

Segue准备
EN

Stack Overflow用户
提问于 2015-08-06 18:32:55
回答 2查看 70关注 0票数 1

每当正确的细节附件被点击时,我都试图将地图视图中有关点注释的数据传递给另一个视图,该视图将显示更多关于在无情视图中没有显示的点注释的信息。我知道我需要使用override function prepareForSegue,但是我如何正确地设置它来做我想做的事情。关于point注释的其他信息来自于Parse,所以我假设我也必须设置一个查询。请帮帮我!谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-08-06 18:45:33

您可以使用NSUserDefaults将一个值从映射视图传递到另一个视图:

代码语言:javascript
复制
func mapView(mapView: MKMapView!, annotationView view: MKAnnotationView!, calloutAccessoryControlTapped control: UIControl!) {

    let title = view.annotation.title
    NSUserDefaults.standardUserDefaults().setObject(title, forKey: "mapTitle")
    performSegueWithIdentifier("mapToCity", sender: self)

}

在下一个视图中,您可以这样获得值:

代码语言:javascript
复制
override func viewDidLoad() {
    super.viewDidLoad()
    let foo1 = NSUserDefaults.standardUserDefaults().objectForKey("mapTitle") as! String
    println(foo1)

}

有关更多信息,请查看示例项目。

票数 1
EN

Stack Overflow用户

发布于 2015-08-06 18:47:52

首先,你把它叫做segue:

代码语言:javascript
复制
performSegueWithIdentifier("segue")

然后准备好:

代码语言:javascript
复制
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    if segue.identifier == "segue" {
        let viewController = segue.destinationViewController as! YourViewController
        controller.setPoint = "10"
    }
}

这将在segue发生之前设置值。希望能帮上忙!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31863303

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档