Bundle pathsForResourcesOfType: inDirectory: - PullRequest
       10

Bundle pathsForResourcesOfType: inDirectory:

3 голосов
/ 24 августа 2011

В моем приложении много картинок, разделенных на несколько категорий (ниже приведено дерево приложений внутри проекта и на моем жестком диске):

ApplicationName
- Resources
-- Thumbs
-- Images
-- Buttons
-- Default.png

В папке thumbs у меня много .png файлов. Проблема в том, что я хочу знать, сколько этих файлов находится в этой папке. Я набираю такую ​​команду:

NSArray *namesArray = [[NSBundle mainBundle] pathsForResourcesOfType:@".png" inDirectory:@"Resources/Thumbs"];

И он не находит никаких файлов внутри пакета. Когда я использую inDirectory: @ "." Я получаю список всех файлов .png (то есть из Изображения, Кнопки + По умолчанию), в то время как мне нужен только этот один каталог.

Я пытался добавить эти папки в проект двумя способами: 1- «Создать группы для любой добавленной папки» и 2- «Создать ссылки на папки для любых добавленных папок».

Когда я использую опцию 1, inDirectory:@"Resources/Thumbs"];, она не работает (namesArray - 0 объектов). Чтобы проверить, я попробовал inDirectory: @ "."], И выяснилось, что путь:

 /Users/name.surname/Library/Application Support/iPhone Simulator/4.3.2/Applications/applicationNumber/applicationName.app/0.png

Когда я использую опцию 2 во время компиляции, я останавливаюсь на «Присоединение к applicationName ...», и проект никогда не запускается.

Как узнать, сколько изображений у меня в папке Thumbs ...?

Ответы [ 2 ]

3 голосов
/ 05 ноября 2013

NSArray *array = [[NSBundle mainBundle] pathsForResourcesOfType:@".png" inDirectory:@"Thumbs"];

Чтобы использовать эту функцию, вам нужно объявить вашу папку следующим образом (когда вы перетаскиваете папку в свой пакет):

enter image description here

3 голосов
/ 01 сентября 2011

Мне пришлось использовать команду:

NSArray *namesArray = [[NSBundle mainBundle] pathsForResourcesOfType:@".png" inDirectory:@"Thumbs/."];

И добавь папки как ссылку, потом все заработало ^^.

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