2014-06-14 4 views
6

У меня есть следующая структура в моей Images.xcassets в Xcode:Обратитесь к изображению в папке Images.xcassets

enter image description here

Существует типичный метод для установки изображения с помощью NSImage *image = [NSImage imageNamed:@"confused"]; но есть способ установить образ, используя структуру папок?

Например, я пробовал NSImage *image = [NSImage imageNamed:@"/Statusbar/confused"]; для обращения к изображению в папке Statusbar, но он не работает. Этот подход был бы полезен, если вам нужно иметь разные изображения с тем же именем, где каждое изображение расположено в другой папке xcassets. И да, Xcode позволяет вам называть два изображения с тем же именем.

+0

В соответствии с [docs] (https: // developer.apple.com/library/mac/documentation/Cocoa/Reference/ApplicationKit/Classes/NSImage_Class/Reference/Reference.html#//apple_ref/occ/clm/NSImage/imageNamed :) его рекурсивный поиск, который включает в себя комплект приложений по умолчанию. – GoodSp33d

+0

@ GoodSp33d Итак, как бы я указал элемент в определенной папке? Например, если два элемента имеют одинаковое имя, но находятся в разных папках, я хотел бы получить элемент из определенной папки. В противном случае поиск просто вернет первый (или последний) элемент по указанному имени независимо от того, где он находится в комплекте приложения. – wigging

+0

Хм ... это даже позволяет вам называть их одинаковыми? ** РЕДАКТИРОВАТЬ ** хм ... да, это так. – Fogmeister

ответ

0

Нет, это невозможно. Если вы хотите, чтобы эта возможность была добавлена, пожалуйста, file a Radar. (Я лично подал rdar: // 15347004, «Добавить способность анализировать каталоги активов», для этой проблемы - но чем больше радаров, тем больше вероятность того, что проблема будет замечена и устранена)

+0

Ок, я думаю, я посмотрю, как подать радар. Спасибо за предложение. – wigging

0

После многократного поиска, нет способа, как frozendevil, для этого и единственным возможным способом является вообще не использовать Images.xcassets и использовать следующий метод, как описано здесь. Can I access all images in a .xcassets at once?

Смежные вопросы