如何在Objective-C中向MSMutableArray添加UIImage?

时间:2012-04-04 15:05:45

标签: iphone objective-c ios5

我有noob objective-c问题。如何将UIImage添加到MSMutableArray?这是我的代码:

MSMutableArray *arr = [[NSMutableArray alloc] init];
UIImage *image;
UIGraphicsBeginImageContext(contextSize);
{
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextTranslateCTM(context, 0, pushUpSize);

    [screenWindow.layer renderInContext: context];  
    image = UIGraphicsGetImageFromCurrentImageContext();
}
UIGraphicsEndImageContext();
[arr addObject:image];

但是这会在程序尝试添加图像时崩溃。我在某处读到它添加一个变量而不是指针,这是正确的吗?如何将UIImage添加到数组中,它的对象不是吗?

谢谢!

2 个答案:

答案 0 :(得分:0)

您正在初始化数组arr,但是将图像添加到(显然是单元化的)数组imageArr

根据您更新的代码,我会说image对象可能是nildocs明确禁止使用addObject:值拨打nil

答案 1 :(得分:0)

@thiesdiggity:从我所看到的代码中,你的代码没有太大问题。但只要尝试下面的代码,因为我认为image对象是nil

MSMutableArray *arr = [[NSMutableArray alloc] init];
UIImage *image;
UIGraphicsBeginImageContext(contextSize);
{
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextTranslateCTM(context, 0, pushUpSize);

    [screenWindow.layer renderInContext: context];  
    image = UIGraphicsGetImageFromCurrentImageContext();
}
UIGraphicsEndImageContext();

if(image != nil)
{
    [arr addObject:image];
}

如果您需要更多帮助,请告诉我们,请发布您的崩溃日志以获取更多帮助

希望这有帮助。