|
楼主 |
发表于 2012-10-17 14:35:10
|
显示全部楼层
多谢。
我先不管Warning信息,然后从XCode帮助中看到,10.6以后就不再提供函数“CGDisplayBitsPerPixel ”,而改用“CGDisplayModeCopyPixelEncoding”了,于是接着到网上查找,终于找到了一段可用的代码(https://trac.macports.org/ticket/30737#),添加到了DarwinUtils.mm中,然后再编译,终于成功编译了。
我添加的代码段如下:
size_t CGDisplayBitsPerPixel ( CGDirectDisplayID display )
{
CGDisplayModeRef originalMode = CGDisplayCopyDisplayMode(display);
CFStringRef pixelEncoding = CGDisplayModeCopyPixelEncoding(originalMode);
if(CFStringCompare(pixelEncoding, CFSTR(IO32BitDirectPixels), 0) == 0)
return 32;
else if(CFStringCompare(pixelEncoding, CFSTR(IO16BitDirectPixels), 0) == 0)
return 16;
else
return 8;
}
|
|