错误修复Xcode 10,用于条件的Swift 4初始化程序必须具有可选

时间:2018-11-02 01:50:08

标签: xcode10 ios12 swift4.2

因此,我正在使用表视图控制器开发储蓄应用程序。我遇到了一个错误,但找不到解决方法。

if let sourceViewController = sender.source as? SavingsTableViewController, let saving = sourceViewController.savings {
  let newIndexPath = IndexPath(row: saving.count, section: 0)
  saving.append(saving)
  SavingsTableViewController.insertRows(at: [newIndexPath], with: .automatic)
}

错误显示为条件绑定的初始化程序必须具有可选类型,而不是'[Savings]'

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

更改

if let sourceViewController = sender.source as? SavingsTableViewController, let saving = sourceViewController.savings {
    let newIndexPath = IndexPath(row: saving.count, section: 0)
    // and so on

收件人

if let sourceViewController = sender.source as? SavingsTableViewController {
    let saving = sourceViewController.savings
    let newIndexPath = IndexPath(row: saving.count, section: 0)
    // and so on

(您的代码仍无法按预期工作,但这可以使您摆脱编译错误。)