Ich habe eine Klasse namens Artikel mit den folgenden Eigenschaften zu geben:Swift: Kann den Wert vom Typ 'Item?' ‚? Artikel .Type‘
var name: String
var photo: UIImage?
var description: String?
var favorite: Bool
Die init-Methode sieht so aus:
init?(name: String, photo: UIImage?, description: String?,
favorite: Bool) {
guard !name.isEmpty else {
return nil
}
self.name = name
self.photo = photo
self.description = description
self.favorite = favorite
}
Im Viewcontroller, ich versuche zu instate die Variable „Position“ wie folgt:
var item = Item?
der Artikel ist optional, weil es nur dann, wenn der Benutzer erstellt wird, um die Taste speichern gedrückt. Es gibt jedoch einen Fehler, der besagt "Erwarteter Mitgliedsname oder Konstruktoraufruf nach Typname". Ich habe die gleiche Zeile mit einer ähnlichen Mahlzeit-Klasse zuvor ohne Probleme verwendet.
Wenn ich versuche, das Element mit diesem Code zu erstellen: ‚Item‘
let name = nameTextField.text ?? ""
let photo = photoImageView.image
let favorite = favoriteButton.favorite
let description = descriptionTextView.text
item = Item(name: name, photo: photo, description: description, favorite: favorite)
ein Fehler sagt: „Kann nicht Wert vom Typ zuordnen "Item? .Type" (aka 'Optional.Type') eingeben ". Ich bin neu bei Swift und bin mir nicht sicher, was passiert und wo das Problem liegt.