Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
真的很难办-尝试在ViewController之间移动数据时,Swift Dynamic Cast失败_Swift_Segue_Viewcontroller - Fatal编程技术网

真的很难办-尝试在ViewController之间移动数据时,Swift Dynamic Cast失败

真的很难办-尝试在ViewController之间移动数据时,Swift Dynamic Cast失败,swift,segue,viewcontroller,Swift,Segue,Viewcontroller,这看起来应该很简单——我已经研究过,看过,试过不同的东西,但就是想不出来。我有一个视图控制器,允许用户输入他们自己对酒厂的评论。这是一个来自细节酒庄页面的模式视图——我只是想用上一个视图中的酒庄名称填充这个模式视图中的标签。然后保存酒厂名称和用户评论评论部分工作正常-其名称转移给我,使我适合使用Swift Dynamic Cast撞毁我失败。非常感谢任何帮助,请参见代码: 查看视图控制器: import UIKit import CoreData class MyReviewViewContr

这看起来应该很简单——我已经研究过,看过,试过不同的东西,但就是想不出来。我有一个视图控制器,允许用户输入他们自己对酒厂的评论。这是一个来自细节酒庄页面的模式视图——我只是想用上一个视图中的酒庄名称填充这个模式视图中的标签。然后保存酒厂名称和用户评论评论部分工作正常-其名称转移给我,使我适合使用Swift Dynamic Cast撞毁我失败。非常感谢任何帮助,请参见代码:

查看视图控制器:

import UIKit
import CoreData

class MyReviewViewController: UIViewController {

var myreview:wineryReview!
var passName:String!


@IBOutlet weak var wineryNameLabel:UILabel!
@IBOutlet weak var myReview:UITextView!

override func viewDidLoad() {
    super.viewDidLoad()

    // Do any additional setup after loading the view.

    wineryNameLabel.text = passName
传递的tableviewcontroller的代码:

错误:

libswiftCore.dylib swift_dynamiccastclass无条件: 0x103450860:pushq%rbp 0x103450861:movq%rsp,%rbp 0x103450864:testq%rdi,%rdi 0x103450867:je 0x10345089e;swift_DynamicCastClass无条件+62 0x103450869:movabsq$-0x7fffffffffffff,%rax 0x103450873:testq%rax,%rdi 0x103450876:jne 0x10345089e;swift_DynamicCastClass无条件+62 0x103450878:leaq 0xb52e9%rip,%rax 0x10345087f:movq%rax,%rax 0x103450882:andq%rdi,%rax 0x103450885:不允许%cs:%rax,%rax 0x103450890:cmpq%rsi,%rax 0x103450893:je 0x1034508ad;swift_DynamicCastClass无条件+77 0x103450895:movq 0x8%rax,%rax 0x103450899:testq%rax,%rax 0x10345089c:jne 0x103450890;swift_DynamicCastClass无条件+48 0x10345089e:leaq 0x36b7d%rip,%rax;Swift动态强制转换失败 0x1034508a5:movq%rax,0xb4c0c%rip;gCRAnnotations+8 0x1034508ac:int3 0x1034508ad:movq%rdi,%rax 0x1034508b0:popq%rbp 0x1034508b1:retq 0x1034508b2:不允许%cs:%rax,%rax

这是什么时候发生的?应该执行“保存”还是“仅查看加载”?仅查看加载-当按下该按钮时会崩溃,该按钮会将您带到该视图控制器-仅在按下该视图中的“保存”按钮时执行“保存”view@MikeGibbs在上一个视图控制器的prepareforsegue中是否有设置密码的内容?这比包含的save函数更相关,但没有机会运行。是的,如下所示:“覆盖函数prepareforsegueegue:UIStoryboardSegue,发送方:AnyObject!”!{如果segue.identifier==mapWinery{让mvc=segue.destinationViewController作为WineryMapViewController mvc.wineryMap=wineryAddress}如果segue.identifier==goToMyReview{让mrvc=segue.destinationViewController作为MyReviewViewController mrvc.passName=wineryNames}'}
var wineryNames = "Glenora Wine Cellars"
(because I am just testing functionaility the variable is just simply called)         in the class

// MARK: - Navigation


 override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) {
    if segue.identifier == "mapWinery" {
        let mvc = segue.destinationViewController as WineryMapViewController
        mvc.wineryMap = wineryAddress
    }
    if segue.identifier == "goToMyReview" {
        let mrvc = segue.destinationViewController as MyReviewViewController
        mrvc.passName = wineryNames
    }

}