3

たとえば、NSImage.hで定義されている定数の画像ファイルを取得したいと思いますNSImageNameGoRightTemplate。それらのいくつかをコピーして編集したいと思います。それらの画像がどこにあるか誰か知っていますか?私はドライブでそれらを見つけるにはあまりにも愚かです...

4

2 に答える 2

1

私の知る限り、それらは1つの場所に配置されておらず、それらの名前は定数の名前をまったく反映していない可能性があります。

これらは、次のようなフレームワークの「リソース」フォルダにあります。

/System/Library/Frameworks/AppKit.framework/Resources/

またはアプリケーションで直接

/System/Library/CoreServices/Finder.app/Contents/Resources/

CandyBarなどのテーマアプリもご覧ください。たぶん、あなたはバイナリのいくつかのパスを見ることができるでしょう。

于 2010-04-21T08:49:08.023 に答える
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 に答える