Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c macOS-Can';t在命令行应用程序中加载图像_Objective C_Xcode - Fatal编程技术网

Objective c macOS-Can';t在命令行应用程序中加载图像

Objective c macOS-Can';t在命令行应用程序中加载图像,objective-c,xcode,Objective C,Xcode,我想将我的图像“test.png”添加到项目中,以便能够在不指定绝对路径的情况下加载它,因为当有人从git克隆我的项目时,我不希望他们更改此绝对路径。 我尝试了资产:我将Media.xcsets添加到项目的文件中,并在其中放置了一个图像。然后我尝试以这种方式加载此图像: NSImage *img = [NSImage imageNamed@"test"]; 而且它不起作用。由于命令行应用程序创建的是单个可执行文件而不是捆绑包,因此您无法自动将其他资源作为运行时包的一部分 一

我想将我的图像“test.png”添加到项目中,以便能够在不指定绝对路径的情况下加载它,因为当有人从git克隆我的项目时,我不希望他们更改此绝对路径。 我尝试了资产:我将Media.xcsets添加到项目的文件中,并在其中放置了一个图像。然后我尝试以这种方式加载此图像:

NSImage *img = [NSImage imageNamed@"test"];

而且它不起作用。

由于命令行应用程序创建的是单个可执行文件而不是捆绑包,因此您无法自动将其他资源作为运行时包的一部分

一种方法是创建复制文件构建阶段,将图像文件移动到Products目录中。此时,可以使用相对路径,例如:

NSString *relPath = @"./imageName.png"
NSImage *img = [[NSImage alloc] initWithContentsOfFile:relPath];

“它不起作用。”-到底什么不起作用?它是可以用内联代码绘制的图像类型吗?@apodidae我不想绘制该图像,但只需使用机器学习算法对其进行分析,然后返回图像上最常用的字体。@koen将不起作用的部分形式化。@borista您还没有解释不起作用的部分。你有错误吗,它崩溃了吗,你有空的图像吗,…?谢谢,这正是我想要的。此外,“目的地”字段必须设置为产品目录,“子路径”字段必须清除。