在iPhone应用程序中“捆绑”应用程序图像的最佳位置

时间:2012-05-27 17:34:21

标签: ios bundle file-management

最好的做法是在iPhone应用程序中捆绑数十个,可能是数百个png图像?

有没有办法用UIImagePickerController访问它们,还是我必须自己创建一些其他方法呢?

另外,捆绑它们的最佳做法是什么?应用程序内捆绑或让应用程序从服务器下载?

2 个答案:

答案 0 :(得分:2)

如果您需要离线使用图片,我会将其放入您的应用包中。我将创建一个物理文件夹并将其拖入Xcode项目并选择创建文件夹引用,该文件夹应显示为蓝色文件夹图标。将所有png文件放在该文件夹中。

要获取该文件夹中所有文件的列表:

NSString *filesPath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"pngfolder"];  // where pngfolder is the folder as described above.
NSArray *filesList = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:filesPath error:nil];

要读取索引i处的单个图像文件,例如上面的filesList数组:

NSString *sourcePath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:[filesList objectAtIndex:i]];
UIImage *img = [[UIImage alloc]initWithContentsOfFile:sourcePath];

答案 1 :(得分:1)

所有大公司所做的最好的方法是将所有小图像作为单个大图像传输,然后在客户端呈现您想要的任何图像。

你可以找到很多很好的例子..我发现这个有趣http://yuilibrary.com/yui/docs/dd/photo-browser.html#slider-and-stylesheet ..查看ys包中出现的js文件以及捆绑为单个图像的所有图像