2016-07-22 73 views
-1

我一直在尝试创建一个数字行应用程序,它使用UIScrollView类将所有标签和刻度添加到数字行(基本上创建UI),以便我可以实现无限滚动的错觉。无法在ViewController和子类之间传递数据

问题是数字线是交互式的,所以输入到我必须访问的UIScrollView,比如在数字行上选择一个数字。然而,每当我尝试从UIScrollView类传递数据(如选择的数字)到ViewController类时,它永远不会工作,因为ViewController中的数据值保持为0.这是我的代码:

( ItemVC是保存了滚动视图控制器,CalculationVC是一个我想将数据传递到)

//In the UIScrollView class 
let destVC: ItemVC = ItemVC() 
destVC.number = myNumber 

//In the ItemVC class 
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 
    if segue.identifier == "Go" { 
     let destVC: CalculationVC = CalculationVC() 
     destVC.firstNumber = number 
    } 
} 
+0

我猜测问题是在UIScrollView类的代码,因为在ItemVC中,数字的值永远不会更改为适当的值,它只是停留在0。 – user3754646

回答

1

应该是这样的:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 
     if let calculationVC = segue.destinationViewController as? CalculationVC { 
      calculationVC. firstNumber = number 
     } 
} 

你需要传递到实际视图控制器是将不会呈现给我一些该控制器类的nstance