当我尝试将其传递给临时变量时,它似乎不会发生。
虽然在构建应用程序时没有错误,但是一旦我尝试输入" rateOfPaddy"的值,它就会失败,引用"致命错误:在展开可选值时意外发现nil&# 34;
如果我做错了什么,请告诉我,无论是与Swift还是Eureka有关?
form +++ Section()
<<< DateTimeRow() {
$0.tag = "RecordDateTag"
$0.title = "Date"
$0.value = NSDate()
}.cellSetup { cell, row in
cell.textLabel?.textColor = UIColor.blackColor()
}.onCellHighlight { _ in
if let dateInput = formInput["RecordDateTag"] as? String {
self.dateInputValue = dateInput
}
}.onCellUnHighlight { _ in
if let dateInput = formInput["RecordDateTag"] as? String {
self.dateInputValue = dateInput
}
}
我使用.onChange回调检查并将信息传递给局部变量,这是没用的。 .onCellHighlight和.onCellUnHighlight组合也没有做到这一点!
答案 0 :(得分:1)
尝试按照记录的here
调用值函数您可以创建如下方法并从onChange回调中调用它
func updateValues() {
let allFormData = formInput.values()
if let dateInput = allFormData["RecordDateTag"] as? String {
self.dateInputValue = dateInput
}
}
答案 1 :(得分:0)
错误&#34;致命错误:在展开可选值时意外发现nil&#34; 表示您正在尝试打开包含 nil 的可选项价值。
验证每个 formInput [KEY] 都有一个您所期望的类型的值,然后强行打开 as!
您可以从Optional Binding中受益
if let value = formInput["Some"] as? Int
{
//Value exist and is an Int
}
else
{
print("Not an Int")
}
更多参考资料: