开始开发 iOS 应用程序 (Swift) - 添加按钮不再起作用
Start Developing iOS Apps (Swift) - Add button isn't working anymore
我正在关注 Apple 的 Start Developing iOS Apps (Swift),在段落实施编辑和删除行为。实施编辑和删除行为后,我注意到 Add (+) 按钮不再起作用。这是在尝试添加按钮时给我一个错误的代码:
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
super.prepare(for: segue, sender: sender)
switch(segue.identifier ?? "") {
case "AddItem":
os_log("Adding a new meal.", log: OSLog.default, type: .debug)
case "ShowDetail":
guard let mealDetailViewController = segue.destination as? MealViewController else {
fatalError("Unexpected destination: \(segue.destination)")
}
guard let selectedMealCell = sender as? MealTableViewCell else {
fatalError("Unexpected sender: \(sender)")
}
guard let indexPath = tableView.indexPath(for: selectedMealCell) else {
fatalError("The selected cell is not being displayed by the table")
}
let selectedMeal = meals[indexPath.row]
mealDetailViewController.meal = selectedMeal
default:
fatalError("Unexpected Segue Identifier; \(segue.identifier)")
}
}
Here is the warning and the suggested Fix-its
Here is the error I get
Here is the storyboard
Here is the segue identifier
Here is the identifier
这里是苹果提供的文件,顺便说一句,我用的是一样的:
https://developer.apple.com/sample-code/swift/downloads/08_ImplementEditAndDeleteBehavior.zip
我知道这段代码很旧,需要升级到Swift 4.1,但我没有太多经验,所以我不能自己做。感谢大家的帮助。
根据错误,当您打开 segue 标识符时,您将达到默认情况。这意味着 segue 中的标识符与任何情况都不匹配。事实上,消息说标识符是 addItem
,它与 AddItem
或 ShowDetail
不匹配。看起来 segue 标识符是区分大小写的,是吧?因此,更改故事板中的 segue 标识符以匹配您期望的标识符之一,可能 AddItem
,然后重试。
我正在关注 Apple 的 Start Developing iOS Apps (Swift),在段落实施编辑和删除行为。实施编辑和删除行为后,我注意到 Add (+) 按钮不再起作用。这是在尝试添加按钮时给我一个错误的代码:
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
super.prepare(for: segue, sender: sender)
switch(segue.identifier ?? "") {
case "AddItem":
os_log("Adding a new meal.", log: OSLog.default, type: .debug)
case "ShowDetail":
guard let mealDetailViewController = segue.destination as? MealViewController else {
fatalError("Unexpected destination: \(segue.destination)")
}
guard let selectedMealCell = sender as? MealTableViewCell else {
fatalError("Unexpected sender: \(sender)")
}
guard let indexPath = tableView.indexPath(for: selectedMealCell) else {
fatalError("The selected cell is not being displayed by the table")
}
let selectedMeal = meals[indexPath.row]
mealDetailViewController.meal = selectedMeal
default:
fatalError("Unexpected Segue Identifier; \(segue.identifier)")
}
}
Here is the warning and the suggested Fix-its
Here is the error I get
Here is the storyboard
Here is the segue identifier
Here is the identifier
这里是苹果提供的文件,顺便说一句,我用的是一样的: https://developer.apple.com/sample-code/swift/downloads/08_ImplementEditAndDeleteBehavior.zip
我知道这段代码很旧,需要升级到Swift 4.1,但我没有太多经验,所以我不能自己做。感谢大家的帮助。
根据错误,当您打开 segue 标识符时,您将达到默认情况。这意味着 segue 中的标识符与任何情况都不匹配。事实上,消息说标识符是 addItem
,它与 AddItem
或 ShowDetail
不匹配。看起来 segue 标识符是区分大小写的,是吧?因此,更改故事板中的 segue 标识符以匹配您期望的标识符之一,可能 AddItem
,然后重试。