有没有人在Retina Mac上成功使用IKImageBrowserView?我得到的是图像大小被误解了。以前,我使用的CGImage图片没有逻辑大小,因此浏览器无法以正确的大小绘制图片是有意义的。但是,我已切换到NSImage,它是使用-initWithCGImage:size:创建的,仍然无法正常工作。

我的图像为244x184像素,应以122x92的逻辑尺寸绘制。当传递122x92的尺寸时,它们被绘制得太大,大约180像素宽。如果我恰好通过了一半(61x46),则尺寸是正确的,但是图像看起来缩小了尺寸,而不清晰。如果我通过122x92,并在Info.plist中将NSHighResolutionCapable设置为NO来运行,则一切正常。

我的结论是,即使与运行OS X 10.11的Retina MacBook Pro上的10.10 SDK一样,IKImageBrowserView也与Retina不兼容。还是我错过了什么?任何指针,将不胜感激!

最佳答案

我发现我并没有真正思考正确的方法。浏览器应该始终缩放其图像,因此这就是视网膜大小的图像最终变大的原因。我只是对浏览器进行了子类化,使其能够使用自定义单元格并为每个单元格自定义图像帧。但是,浏览器中存在一些细微的错误,这些错误会导致它在Retina模式下仅缩放图像一点,但是我能够通过为每个包含图像的单元格创建自定义前景层而无需缩放来解决此问题。问题解决了。希望这会在将来对其他人有所帮助。

关于macos - 视网膜屏幕上的IKImageBrowserView,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36694461/

10-09 01:50