我想获取 NSImage.h 中定义的常量的图像文件,NSImageNameGoRightTemplate
例如。我想复制和编辑其中的一些。有人知道这些图像在哪里吗?我太笨了,在驱动器上找不到它们...
问问题
4903 次
2 回答
1
如果我想要图像,我会在这个数组中使用类别扩展:
@implementation NSImage (SystemImages)
+ (NSArray*) systemImages {
static NSArray *images;
return images = images ?: ({
NSMutableArray *imgs = @[].mutableCopy;
for (id name in @[
NSImageNameQuickLookTemplate,
NSImageNameBluetoothTemplate,
NSImageNameIChatTheaterTemplate,
NSImageNameSlideshowTemplate,
NSImageNameActionTemplate,
NSImageNameSmartBadgeTemplate,
NSImageNameIconViewTemplate,
NSImageNameListViewTemplate,
NSImageNameColumnViewTemplate,
NSImageNameFlowViewTemplate,
NSImageNamePathTemplate,
NSImageNameInvalidDataFreestandingTemplate,
NSImageNameLockLockedTemplate,
NSImageNameLockUnlockedTemplate,
NSImageNameGoRightTemplate,
NSImageNameGoLeftTemplate,
NSImageNameRightFacingTriangleTemplate,
NSImageNameLeftFacingTriangleTemplate,
NSImageNameAddTemplate,
NSImageNameRemoveTemplate,
NSImageNameRevealFreestandingTemplate,
NSImageNameFollowLinkFreestandingTemplate,
NSImageNameEnterFullScreenTemplate,
NSImageNameExitFullScreenTemplate,
NSImageNameStopProgressTemplate,
NSImageNameStopProgressFreestandingTemplate,
NSImageNameRefreshTemplate,
NSImageNameRefreshFreestandingTemplate,
NSImageNameBonjour,
NSImageNameComputer,
NSImageNameFolderBurnable,
NSImageNameFolderSmart,
NSImageNameFolder,
NSImageNameNetwork,
NSImageNameDotMac,
NSImageNameMobileMe,
NSImageNameMultipleDocuments,
NSImageNameUserAccounts,
NSImageNamePreferencesGeneral,
NSImageNameAdvanced,
NSImageNameInfo,
NSImageNameFontPanel,
NSImageNameColorPanel,
NSImageNameUser,
NSImageNameUserGroup,
NSImageNameEveryone,
NSImageNameUserGuest,
NSImageNameMenuOnStateTemplate,
NSImageNameMenuMixedStateTemplate,
NSImageNameApplicationIcon,
NSImageNameTrashEmpty,
NSImageNameTrashFull,
NSImageNameHomeTemplate,
NSImageNameBookmarksTemplate,
NSImageNameCaution,
NSImageNameStatusAvailable,
NSImageNameStatusPartiallyAvailable,
NSImageNameStatusUnavailable,
NSImageNameStatusNone
])
{
[imgs addObject:[NSImage imageNamed:name]];
}
imgs.copy;
});
}
@end
于 2012-04-30T02:52:54.687 回答
1
据我所知,它们并不位于一个地方,它们的名称可能根本无法反映常量的名称。
它们可以位于框架的“资源”文件夹中,例如
/System/Library/Frameworks/AppKit.framework/Resources/
或直接在应用程序中,例如
/System/Library/CoreServices/Finder.app/Contents/Resources/
您还可以查看主题应用程序,例如 CandyBar。也许您将能够在二进制文件中看到一些路径。
于 2010-04-21T08:49:08.023 回答