我正在尝试将一些数据从数组发送到另一个interfaceController。问题是我得到了
在解包可选值异常
时意外发现nil
即使数组不是零。事实上,我甚至可以使用
打印结果打印(...)。
问题是我无法将此结果设置为标签而不会出现异常。
这是我用新的interfaceController和上下文数据笑的代码
@IBAction func lauchInterfaceClick() {
presentControllerWithName("SecondInterface", context: ["hi","how are you"])
}
然后在SecondInterface中检索结果,如下所示
override func awakeWithContext(context: AnyObject?) {
super.awakeWithContext(context)
// Configure interface objects here.
if context != nil{
let somevalue = context as! [String]
// here is where I getting the exception, in addition to Thread 1: EXC_BAD_INSTRUCTION (code=EXC_i386_INVOP, subcode=0x0)
self.showWat.setText(String(somevalue[0]))
// I have also tried this
// self.showWat.setText(somevalue[0])
}
请注意,另一方面,print(String(somevalue[0]))
输出hi
答案 0 :(得分:0)
我会使用exe b.'wincmd w'
的实现:
let buf_id = filter(range(1,bufnr('$')), 'v:val =~ "THEPATTERN"'))
在Swift Programming Language Reference中查看“可选链接作为强制解包的替代方法”部分。
或者在堆栈溢出处查看此answer。