使用[UIImage imageWithContentsOfFile:]
时排除文件扩展名是否有任何负面影响,或者最好在路径中包含文件类型?
Apple Docs声明initWithContentsOfFile:
需要以下路径作为参数:
文件的路径。此路径应包含标识图像数据类型的文件扩展名。
但是,[UIImage imageWithContentsOfFile:]
的路径只是声明:
文件的完整或部分路径。
我只是想知道是否仍然是包含文件扩展名的最佳做法,或者甚至不担心它。谢谢!
答案 0 :(得分:0)
您应该包含所有文件请求的文件扩展名。我能想到的唯一一个例子就是使用
NSBundle pathForResource:ofType:
方法。该方法指定文件名之外的文件扩展名。我相对肯定“部分路径”是指相对路径。您可以仅通过文件名在bundle的根目录中请求一个文件,因为它的相对于bundle的路径在根目录中,换句话说就是文件名。
答案 1 :(得分:0)
最好的方法是使用NSBundle pathForResource:ofType:
如果你有这些图片:
如果您想将其加载到UIImage
,您将使用以下代码:
UIImage *myImage;
myImage = [UIImage imageWithContentsOfFile:[NSBundle pathForResource:@"myImage" ofType:@"png"]];
此代码还将加载iPhone Retina中的“myImage@2x.png”,无需将@ 2x添加到代码中。
请务必写下确切的文件名。 “myimage”可能无法在设备上运行,因为原始文件名具有大写“I”(“myImage.png”)。