任何iPhone集合对象都可以保存图像吗?

问题描述 投票:0回答:2

实际上,我想要一个包含2个图像对象和1个文本对象的自定义单元格,我决定为这些对象创建一个容器。

那么是否可以在对象中保存图像并将该对象插入任何集合对象中,然后使用该对象在单元格内显示?

iphone cocoa-touch
2个回答
2
投票

NSArray和NSDictionary都持有对象。这些很可能是您将用于表视图的集合。

实现您要执行的操作的最佳方法是使用UIImage类。 UIImages包装CGImage并为您完成所有内存管理(如果您的应用程序内存不足,图像数据被清除并在您绘制时自动重新加载 - 非常酷,是吗?)您还可以非常轻松地从文件中读取图像使用这个类(支持一大堆格式)。

有关更多信息,请查看NSArray,NSMutableArray和UIImage的文档。

//create a UIImage from a jpeg image
UIImage *myImage = [UIImage imageWithContentsOfFile:@"myImage.jpg"];
NSArray *myArray = [NSMutableArray array];      // this will autorelease, so if you need to keep it around, retain it
[myArray addObject:myImage];



//to draw this image in a UIView's drawRect method
CGContextRef context = UIGraphicsGetCurrentContext();  // you need to find the context to draw into
UIImage *myImage = [myArray lastObject];   // this gets the last object from an array, use the objectAtIndex: method to get a an object with a specific index
CGImageRef *myCGImage = [myImage CGImage];
CGContextDrawImage(context, rect, myCGImage);  //rect is passed to drawRect

1
投票

应该没有问题。只要确保你正确地保留它以及你班上没有的东西。

© www.soinside.com 2019 - 2024. All rights reserved.