I pass a long number as string from FirstVC.swift to SecondVC.swift like:
let userId = user.userID // GOT FROM GOOGLE SIGN IN
let vc = self.storyboard?.instantiateViewController(withIdentifier: "SecondVC") as! SecondVC
let navigationController = self.tabBarController?.navigationController
vc.socid = userId!
let transition = CATransition()
transition.duration = 0.3
transition.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)
transition.type = kCATransitionMoveIn
transition.subtype = kCATransitionFromTop
self.navigationController?.view.layer.add(transition, forKey: nil)
self.navigationController?.pushViewController(vc, animated: false)
and receive in SecondVC.swift:
var socid:String!
override func viewDidLoad() {
super.viewDidLoad()
print(socid) // RETURNS Optional("11365489964475")
if(socid==nil){
print("socid is empty")
}else{
let i1 = Int(socid!)! + 7778955 //I GET ERROR HERE
}
}
but I get error: Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value
If socid has an optional value, why I can not unwrap the string? AND when socid equals some other short number everything works.
socidhas a value - Scripylet i1 = Int(socid!)! + 7778955here - Scripy