ios - 尝试检索图像 - 出现 EXC_BAD_ACCESS 错误

标签 ios image cell tableview

我使用 UserDefaults 将图片保存到 NSData,现在希望在 tableview 单元格中检索它。

这是我在 TableView.m 的 ViewDidLoad 中放入的内容

NSData *imageData;
imageData = [NSKeyedArchiver archivedDataWithRootObject:yourUIImage];
[[NSUserDefaults standardUserDefaults] setObject:imageData forKey:@"image"];

这是我在 TableView cellforRowatIndex 中放入的内容
cell.imageView.image = [UIImage imageWithData:@"bild"];
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

但是,当我启动程序时,我在 cell.imageView.image 行出现 EXC_BAD_ACCESS 错误以及“不兼容的指针类型将“NSString*”发送到“NSData*”类型的参数”

顺便说一句,我首先如何保存图像:
if ([[NSUserDefaults standardUserDefaults] objectForKey:@"image"] == nil) { 
picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
[self presentModalViewController:picker animated:YES];

    NSData *imageData;
    UIImage *yourUIImage;
    imageData = [NSKeyedArchiver archivedDataWithRootObject:yourUIImage];
    [[NSUserDefaults standardUserDefaults] setObject:imageData forKey:@"image"];

最佳答案

使用NSKeyedUnarchiver作为 NSKeyedArchiver 的对应物像这样:

NSData *imageData = [[NSUserDefaults standardUserDefaults] dataForKey: @"image"];
cell.imageView.image = [NSKeyedUnarchiver unarchiveObjectWithData: imageData];

关于ios - 尝试检索图像 - 出现 EXC_BAD_ACCESS 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8869591/

相关文章:

ios - Google FCM 是否支持基于 HTTP 2 的 Apple APNs API?

Android截图错误: RGBA override BLOB format buffer should have height == width

android - 难以理解如何支持多屏

css - 跨浏览器删除表格单元格填充/间距

arrays - 将数组分组到单元格中

swift - 自定义 TableViewCell 出了问题?

ios - 如何等待 Realm.io 迁移完成?

ios 崩溃 _mh_execute_header (知道吗?)

ios - 如何刷新 CollectionView 中单元格内的按钮?

image - ffmpeg在从图像生成的视频中缺少图像帧