NSURL* urlEx = [NSURL URLWithString:@"Pacific_Map.png"];
NSData* mapExIMGData = [[NSData alloc] initWithContentsOfURL: urlEx];
UIImage* imgEx = [[UIImage alloc] initWithData:mapExIMGData];
mapImageViewEx.image = imgEx;
如果我替换mapImageViewEx.image = imgEx; with mapImageViewEx.image = [UIImage imageNamed:@“Pacific_Map.png”];它有效,但我不想使用imageNamed。
答案 0 :(得分:2)
那是因为imageNamed知道扫描文件的位置,但initWithContentsOfURL需要完整路径。使用
NSString *imagePath = [[NSBundle mainBundle] pathForResource:@"Pacific_Map" ofType:@"png"];
NSURL* urlEx = [NSURL fileURLWithPath:imagePath];
NSData* mapExIMGData = [[NSData alloc] initWithContentsOfURL: urlEx];
UIImage* imgEx = [[UIImage alloc] initWithData:mapExIMGData];
mapImageViewEx.image = imgEx;
答案 1 :(得分:1)
使用imageNamed有什么问题?无论如何,你可以使用initWithContentsofPath。
+ (UIImage *)imageWithContentsOfFile:(NSString *)path
告诉我们您要完成的更多内容。祝你好运,
詹姆斯
编辑:抱歉,我认为Pacific_Map.png只是一个占位符路径。与其他人发布的一样,如果您不打算使用imageNamed,则需要指明完整路径。