Добавить значок (mac & pc) в файл с какао - PullRequest
1 голос
/ 05 июля 2010

Я хочу добавить значок (icns & ico) в файл в приложении для iPhone, и я не совсем уверен, с чего начать! Поэтому, когда этот файл просматривается в Finder или Windows Explorer , он будет иметь собственный значок.

Кто-нибудь может указать мне правильное направление?

Ответы [ 2 ]

6 голосов
/ 16 июля 2010

Вы можете использовать -setIcon: forFile: options: method в NSWorkspace, если хотите изменить значок файла или папки в Mac OS X.

2 голосов
/ 05 июля 2010

У меня нет ответа для Windows Explorer.Для MacOS пользовательский значок файла сохраняется в ветке ресурсов файла как kIconFamilyType с идентификатором kCustomIconResource.Пользовательский значок для папки хранится в файле с именем Icon\r (\ r означает mac newline) в папке.Для томов пользовательский значок находится в файле .VolumeIcon.icns в корне тома.В каждом случае вы должны установить флаг kHasCustomIcon Finder для элемента.

Какао не дает вам доступ к ветке ресурса или флагам Finder.Используйте FSSetCatalogInfo, чтобы установить флаги Finder.Используйте FSCreateResourceFork, AddResource и CloseResFile, чтобы добавить пользовательское семейство значков в файл.Те же вызовы ветвления ресурса используются для файла пользовательского значка в папке.

Обычный способ установить значок - вставить его из окна Get Info Finder или отправить Finder событие apple.Вы можете отправлять яблочные события из какао, но это не поможет iPhone.

Чтобы создать файл на iPhone с ветвлением ресурса, вам, вероятно, придется создать zip-архив, в котором будет создан ресурсвилка в молнии.Вам нужно будет вручную создать оболочку ветки ресурса вокруг данных семейства значков.Структура ветки ресурса хорошо документирована.

Вероятно, было бы проще иметь вспомогательное приложение на MacOS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...