Ich bin sehr neu in der schnellen Entwicklung, und ich arbeite an this section eines Apple bereitgestellten Swift-Tutorials. Ich habe eine Steckdose für eine Beschriftung, ein Bild und eine benutzerdefinierte Ansicht erstellt, die in einer Tabellenzelle verschachtelt sind. Wenn ich laufe, bekomme ich diesen FehlerDiese Klasse ist nicht Schlüsselcodierung-kompatibel für den Schlüssel
2016-07-20 23: 16: 11.110 FoodTracker [8446: 3016336] Unbekannte Klasse MealTableViewCell in Interface Builder-Datei. 2016-07-20 23: 16: 11.124 FoodTracker [8446: 3016336] * Beenden App aufgrund der nicht abgefangenen Ausnahme 'NSUnknownKeyException', Grund: '[setValue: forUndefinedKey:]: Diese Klasse ist nicht Schlüsselwert codierungskonform für die SchlüsselnameLabel. ' * ersten Wurf Call-Stack:
Es gibt keine doppelten Auslässen und ich glaube, die cellIdentifier in meiner Tabelle verwendet View Controller korrekt ist. Meine Tabellenzelle
import UIKit
class MealTableViewCell: UITableViewCell {
// MARK: Properties
@IBOutlet weak var nameLabel: UILabel!
@IBOutlet weak var photoImageView: UIImageView!
@IBOutlet weak var ratingControl: RatingControl!
override func awakeFromNib() {
super.awakeFromNib()
}
override func setSelected(selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
}}
My Table View Controller
import UIKit
class MealTableViewController: UITableViewController {
// MARK: Properties
var meals = [Meal]()
override func viewDidLoad() {
super.viewDidLoad()
loadSampleMeals()
}
func loadSampleMeals() {
let photo1 = UIImage(named: "meal1")!
let meal1 = Meal(name: "Caprese Salad", photo: photo1, rating: 4)!
let photo2 = UIImage(named: "meal2")!
let meal2 = Meal(name: "Chicken and Potatoes", photo: photo2, rating: 5)!
let photo3 = UIImage(named: "meal3")!
let meal3 = Meal(name: "Pasta with Meatballs", photo: photo3, rating: 3)!
meals += [meal1, meal2, meal3]
}
override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return 1
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return meals.count
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
// Table view cells are reused and should be dequeued using a cell identifier.
let cellIdentifier = "MealTableViewCell"
let cell = tableView.dequeueReusableCellWithIdentifier(cellIdentifier, forIndexPath: indexPath) as! MealTableViewCell
// Fetches the appropriate meal for the data source layout.
let meal = meals[indexPath.row]
cell.nameLabel.text = meal.name
cell.photoImageView.image = meal.photo
cell.ratingControl.rating = meal.rating
return cell
}}
Dank!
Haben Sie Klasse von RatingControl in Storyboard ?? –