objective-c - 将 UIIImage 对象设置为 NSMutableDictionary 对我不起作用

标签 objective-c ios uiimage uiimagepickercontroller nsmutabledictionary

我在尝试将 UIImage 保存到 NSMutableDictionary 时遇到了相当大的困难,我正在尝试使用临时值将图像保存到该字典中(以防用户不想保存它们)。 NSMutableDictionary 在 vi​​ewDidLoad 方法中初始化,如下所示:

     NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
     self.tempValues = dict;

我可以完美地存储 UITextFields 中的 NSString,但是当我尝试从 UIImagePickerController 设置图像时,它们在字典中的值为零。

这是给我带来问题的方法:

    - (void)imagePickerController:(UIImagePickerController *)picker          didFinishPickingMediaWithInfo:(NSDictionary *)info
    {
        UIImage *chosenImage = [info objectForKey:UIImagePickerControllerEditedImage];
        UIImage *shrunkenImage = shrinkImage(chosenImage, CGSizeMake(115, 115));
        UIImage *listImage = shrinkImage(shrunkenImage, CGSizeMake(44, 44));

        [tempValues setObject:shrunkenImage forKey:[NSNumber numberWithInt:kDetailImageIndex]];
        [tempValues setObject:chosenImage forKey:[NSNumber numberWithInt:kFullImageIndex]];
        [tempValues setObject:listImage forKey:[NSNumber numberWithInt:kTableImageIndex]];

        if ([tempValues objectForKey:[NSNumber numberWithInt:kTableImageIndex]] != nil) {
            NSLog(@"The image exists in tempValues");
        } else {
            NSLog(@"The image in tempValues is in fact nil.");
        }

        [picker dismissModalViewControllerAnimated:YES];
    }

运行时,@“tempValues 中的图像实际上为零。”消息被打印到控制台..

如果我将此图像直接设置为稍后将保存它们的对象的属性(即,一旦用户按下“保存”),我可以完美地使用它们并且它们会正确保存,所以选择了Image 、shrunkenImage 和listImage 实际上保存着一个图像。看起来像这样:

     object.fullImage = chosenImage;
     object.detailImage = shurnkenImage;
     object.tableImage = listImage;        //These work

有人知道我做错了什么吗?

最佳答案

我还没有尝试过,但请尝试以下操作。

使用“字符串值”而不是使用“数字”作为键值。

[tempValues setObject:shrunkenImage forKey:[NSString .....]];

关于objective-c - 将 UIIImage 对象设置为 NSMutableDictionary 对我不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9855855/

相关文章:

ios - UITabbarController - 如何取消选择 iOS 5.0 和 iOS 4.3 中的所有选项卡

ios - UIGraphicsGetImageFromCurrentImageContext() 返回 nil

ios - 下载为 PNG 时 UIImage 到 MTLTexture

iphone - iOS 为 UIImageView 获取图像的可见部分

objective-c - 导入 Cocoalibspotify

ios - 我可以将自定义 xib 连接到框架中的类吗?

objective-c - 这个 objective-c 属性综合警告是什么意思?

ios - 缩放非视网膜 cocos2d-iphone 游戏以适应视网膜 iPad 屏幕

ios - 在 MKMapView 中围绕用户位置绘制一个半径为 1000m 的圆

ios - UIImage View -动画 View 逻辑错误xCode 4.2