如果有人曾经使用过PhotoViewController,那么三个开源项目中的MockPhotoSource可以告诉我如何更改代码以在本地而不是在互联网上显示照片存储。 这是显示一张照片的代码示例:
- (void)viewDidLoad {
self.photoSource = [[MockPhotoSource alloc]
initWithType:MockPhotoSourceNormal
title:@"Flickr Photos"
photos:[[NSArray alloc] initWithObjects:
[[[MockPhoto alloc]
initWithURL:@"http://farm4.static.flickr.com/3246/2957580101_33c799fc09_o.jpg"
smallURL:@"http://farm4.static.flickr.com/3246/2957580101_d63ef56b15_t.jpg"
size:CGSizeMake(960, 1280)] autorelease], nil]
];
}
@end
该方法看起来像这样:
- (id)initWithURL:(NSString )URL smallURL:(NSString)smallURL size:(CGSize)size
caption:(NSString*)caption {
if (self = [super init]) {
_photoSource = nil;
_URL = [URL copy];
_smallURL = [smallURL copy];
_thumbURL = [smallURL copy];
_size = size;
_caption = [caption copy];
_index = NSIntegerMax;
}
return self;
}
我不是Objective-C的专家,而且我认为这个项目的帮助不够。
最诚挚的问候,
答案 0 :(得分:2)
好的我找到了一个解决方案,它并不复杂我只需要在initWithURL和smallURL之后使用bundle路径:
initWithURL:(@"bundle://image.jpg")
smallURL:(@"bundle://smallimage.jpg")
当然,在我使用数据库显示路径之后,我会在bundle之后放置一个参数,我认为它的'%s'
答案 1 :(得分:1)
网址不仅适用于互联网上的资源,还有file URL。通常,您在Cocoa中生成文件URL,如
NSString * path =文件系统中的某个路径;
NSURL * fileURL = [NSURL fileURLWithPath:path];
然后您可以根据需要使用fileURL!