Ich habe eine UIImageView, mit der ein Benutzer ein Bild platzieren und halten kann, bis es gespeichert werden kann. Das Problem ist, ich kann nicht herausfinden, wie das Bild, das ich in der Ansicht platziert habe, tatsächlich gespeichert und abgerufen werden kann.
Ich habe das Bild wie folgt abgerufen und in der UIImageView platziert:
//Get Image
- (void) getPicture:(id)sender {
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsEditing = YES;
picker.sourceType = (sender == myPic) ? UIImagePickerControllerSourceTypeCamera : UIImagePickerControllerSourceTypeSavedPhotosAlbum;
[self presentModalViewController:picker animated:YES];
[picker release];
}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage (UIImage *)image editingInfo:(NSDictionary *)editingInfo {
myPic.image = image;
[picker dismissModalViewControllerAnimated:YES];
}
Das ausgewählte Bild wird in meiner UIImageView gut angezeigt, aber ich habe keine Ahnung, wie ich es speichern soll. Ich speichere alle anderen Teile der Ansicht (hauptsächlich UITextfield) in Core Data. Ich habe gesucht und gesucht und viele Code-Teile ausprobiert, die von den Leuten vorgeschlagen wurden, aber entweder gebe ich den Code nicht richtig ein oder diese Vorschläge funktionieren nicht mit der Art und Weise, wie ich meinen Code eingerichtet habe. Es ist wahrscheinlich das erstere. Ich möchte das Bild in der UIImageView mit derselben Aktion (einer Schaltfläche zum Speichern) speichern, mit der ich den Text in den UITextFields speichere. So speichere ich meine UITextField-Informationen:
// Handle Save Button
- (void)save {
// Get Info From UI
[self.referringObject setValue:self.myInfo.text forKey:@"myInfo"];
Wie ich bereits sagte, habe ich verschiedene Methoden ausprobiert, um dies zum Laufen zu bringen, kann es aber nicht verstehen. Zum ersten Mal in meinem Leben wollte ich einem leblosen Objekt körperlichen Schaden zufügen, aber ich habe es geschafft, mich zurückzuhalten.
Ich möchte in der Lage sein, das Bild, das der Benutzer in der UIImageView im Dokumentordner der Anwendung ablegt, zu speichern und es dann abzurufen und in einer anderen UIImageView abzulegen, um es anzuzeigen, wenn der Benutzer diese Ansicht auf den Stapel schiebt. Jede Hilfe wird sehr geschätzt!
quelle
Swift 3.0 Version
quelle
Dies ist Fangming Nings Antwort für Swift 4.2 , aktualisiert mit einer empfohlenen und schnelleren Methode zum Abrufen des Dokumentverzeichnispfads und mit einer besseren Dokumentation. Dank an Fangming Ning für die neue Methode.
Hier finden Sie alle möglichen Optionen zum Schreiben von Daten.
quelle
fileURLWithPath
zusammen mitabsoluteString
falsch ist.quelle
Swift 4 mit Verlängerung
Anwendungsbeispiel
quelle
In Swift:
quelle