Mac应用程序不使用视网膜@ 2x图像文件

wig*_*ing 4 cocoa objective-c nsimage nsimageview retina-display

我正在尝试更新我的应用程序以支持视网膜显示,但是当它在Retina MacBook Pro上运行时,未使用@ 2x版本的图像.以下是我在我的应用中用于设置图像视图的方法.

在XML解析器类中:

[[self theCurrent] setCurIcon:[NSImage imageNamed:@"snow.png"]];
Run Code Online (Sandbox Code Playgroud)

在Current类中设置NSImageView:

[viewCurIcon setImage:curIcon];
Run Code Online (Sandbox Code Playgroud)

每个图像文件都有一个标准的res版本和一个高分辨率版本,它们都在Xcode项目的支持文件文件夹中:

snow.png is 128x128 pixels
snow@2x.png is 256x256 pixels
Run Code Online (Sandbox Code Playgroud)

我确认当Xcode构建应用程序时,@ 2x版本包含在应用程序包中.其他需要注意的事项是:该应用程序是一个菜单栏应用程序,其中所有视图都在NSPopover中,动画GIF用于其中一个图像视图(没有@ 2x版本的GIF),该应用程序是使用Xcode 4.4构建的较旧的MacBook Pro运行OSX 10.7.4,没有视网膜显示.

Mic*_*lum 5

尝试使用@"snow"而不是@"snow.png".这样你就可以指向一个名为"snow"的图像,并让操作系统整理出有关分辨率和扩展的细节,而不是具体说明图像将被命名"snow.png"