Ios 使用imageWithContentsOfFile从XCAssets获取启动映像:

Ios 使用imageWithContentsOfFile从XCAssets获取启动映像:,ios,objective-c,xcode,uiimage,imagenamed,Ios,Objective C,Xcode,Uiimage,Imagenamed,我正在尝试从启动映像文件中的启动映像映像集加载映像,但我不想使用名为:的映像,因为这会浪费内存,并且在初始启动期间,映像只需显示几秒钟 我尝试了多种方法,但到目前为止,我只能使用imageNamed:加载它们 这项工作: [UIImage imageNamed:@"LaunchImage-700-568h.png"] 这不起作用(返回null): 是否有任何方法可以在不将资源显式添加到目标(除了资产文件之外)的情况下执行此操作?谢谢 看来你的问题的答案是否定的 根据XCAssets的说法 资源

我正在尝试从
启动映像
文件中的
启动映像
映像集加载映像,但我不想使用名为:
映像,因为这会浪费内存,并且在初始启动期间,映像只需显示几秒钟

我尝试了多种方法,但到目前为止,我只能使用
imageNamed:
加载它们

这项工作:

[UIImage imageNamed:@"LaunchImage-700-568h.png"]
这不起作用(返回
null
):


是否有任何方法可以在不将资源显式添加到目标(除了资产文件之外)的情况下执行此操作?谢谢

看来你的问题的答案是否定的

根据XCAssets的说法

资源目录中的每个集合都有一个名称。可以使用该名称以编程方式加载集合中包含的任何单个图像。要加载映像,请调用特定于平台的类方法,传入包含映像的集合的名称。操作系统将从最适合当前比例因子的集合中加载图像。iOS的平台方法名为ImageName:。对于OS X,平台方法的名称为ImageName:

因此,我们必须使用[UIImage ImageName::方法从iOS上的XCAssets目录加载图像


请参阅类似的问题和答案。

谢谢您的回复。是否有任何方法可以做到这一点,而不必将文件作为资源添加到Xcode资产文件之外?如果可能的话,我想将应用程序的文件大小保持在较低的水平,这就为不同的屏幕添加了不同的启动文件。可惜他们没有更好的方法来实现这一点。。。谢谢你的回答。
[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"LaunchImage-700-568h" ofType:@"png"]]