2013-12-08 2 views
0

Мой вопрос касается набора приложений в проекте. Я читал об этом и могу понять некоторые основные вещи (я не являюсь носителем английского языка). Я могу понять, что resources folder используется для хранения файлов, которые будут использоваться в проекте, например. медиафайлы (изображения, аудио, видео и т. д.) и должны быть указаны в application bundle.Какая папка Bundle и ресурсы приложения

Итак, в чем смысл, если я хочу использовать изображения и другие ресурсы в моем проекте? В моем other related question я не могу использовать их, ссылаясь на NSImage imageNamed:.

Я использовал следующий без успеха ЗАГРУЗКИ моих файлов:

  • NSBundle методы
  • imageNamed:@"string" с/без расширения файла
  • изображений находятся в папке ресурсов

I» m обучения Cocoa и Objective-C, и, конечно, это отличается от C++ или Java, когда я w ant создать ImageIcon или QImage.

+1

Можете ли вы предоставить нам какой-то код, вы пробовали и не работали? Также убедитесь, что файлы находятся внутри 'Target Membership'. Просто выберите файл и посмотрите в «File Inspector» справа. –

+0

NSImageView * принадлежности = [[NSImageView alloc] initWithFrame: NSMakeRect (0,0,200,55)]; [принадлежности комплектImageScaling: NSScaleToFit]; [принадлежности комплектImage: [NSImage изображениеNamed: @ "logosH.png"]]; [мойAlert комплектAccessoryView: принадлежности]; Самое странное, что мне удается достичь загрузки одного из этих изображений с использованием IB над NSImageView, но в коде нет – Giquo

+0

файл проверяется в целевом членстве – Giquo

ответ

1

Возможно, я не совсем понял проблему, поэтому исправьте меня, если я ошибаюсь. Я считаю, что проблема связана с целевым членством вашего изображения или с тем, как вы извлекаете изображение в свой код.

Добавление изображения в цель проекта будет соответствующим образом скопировать ресурс во время компиляции. Чтобы добавить изображение в свою цель, выберите его в навигаторе файлов, а затем откройте панель утилиты . На панели служебных программ выберите File Inspector Tab. Ищите Цель членство раздела и убедитесь, что изображение выбрано для желаемых целей:

Xcode 5 Target Membership

ли вы имеете в виду, что вы не можете использовать метод NSImage imageNamed: для извлечения ресурсов? Если да, то вы можете получить ресурс, как это (от основного пакета ресурсов):

NSString *imageName = [[NSBundle mainBundle] pathForResource:@"image1" ofType:@"png"]; 
NSImage *imageObj = [[NSImage alloc] initWithContentsOfFile:imageName]; 

Это также выглядит как у вас уже есть a good answer to your other related question.

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