我正在尝试打开一个屏幕,其中显示您好图像。它在Xcode上没有显示任何错误,但是当我运行该程序时,屏幕弹出黑色。这只是一个黑屏,并且不显示图像打招呼。听说解决方案是将图像放入同一目录,所以我将其拖到Xcode上。尽管如此,它仍显示为黑色。
#include "SDL/SDL.h"
int main( int argc, char* args[] )
{
//The images
SDL_Surface* hello = NULL;
SDL_Surface* screen = NULL;
//Start SDL
SDL_Init( SDL_INIT_EVERYTHING );
//Set up screen
screen = SDL_SetVideoMode( 640, 480, 32, SDL_SWSURFACE );
//Load image
hello = SDL_LoadBMP( "hello.bmp" );
//Apply image to screen
SDL_BlitSurface( hello, NULL, screen, NULL );
//Update Screen
SDL_Flip( screen );
//Pause
SDL_Delay( 2000 );
//Free the loaded image
SDL_FreeSurface( hello );
//Quit SDL
SDL_Quit();
return 0;
}
最佳答案
问题在于,一旦可执行文件开始运行,镜像就不在同一位置。
通过更改“自定义工作目录”,您也许可以在短期内解决此问题。
(来源:nathdaly at www-personal.umich.edu)
在“产品->编辑方案...”的顶部菜单下找到
这是一个很好的快速解决方案,以查看是否可以使程序正常运行。
但这不适用于您实际要发布的应用程序。
为此,您需要将图像嵌入到游戏中,以便它们随包装一起“运送”。像完成操作一样,将图像添加到Xcode项目中,然后确保在单击“目标”时将其包含在“构建阶段”选项卡下的“复制 bundle 资源”构建阶段中。