我试图在我的应用程序中显示垃圾桶的图标,无论是空的还是满的。我已经尝试了几种方法来获取图标,但每次大小都是0。你知道一种获得全尺寸图像的方法吗?
最佳答案
我假设您是通过nsworkspace获得垃圾图标的,使用iconscore.h中的kTrashIcon
常量(如果不是,这是:
NSImage* image = [[NSWorkspace sharedWorkspace] iconForFileType:NSFileTypeForHFSTypeCode(kTrashIcon)];
…nsiMime包含多个不同大小的表示。如果你想要最大的一个,只需迭代可用的表示来找到它:
NSEnumerator* representationEnumerator = [[image representations] objectEnumerator];
NSSize biggestSize = NSMakeSize(0, 0);
NSSize size;
while ((size = [(NSImageRep*)[representationEnumerator nextObject] size]).width) {
if (size.width > biggestSize.width) {
biggestSize = size;
}
}
[image setSize:biggestSize];
…在我的计算机上,这会导致nsimage设置为512x512。