2013-12-07 2 views
2

Я пытаюсь загрузить изображение с помощью NSImage imageNamed: метод, но я не имею никакого успехаNSImage возвращает ноль, даже если PNG файла находится в папке Resource

я скопировал файл в папке проекта: Project> Ресурсы и добавлено в проект, используя: «Добавить файлы в проект ...»

NSImage* image = [NSImage imageNamed:@"logosH"]; 

    if (image == nil){ 

     NSLog(@"NULL :/"); 
    } 

    NSImageView *accessory = [[NSImageView alloc] initWithFrame:NSMakeRect(0,0,200,55)]; 
    [accessory setImageScaling:NSScaleToFit]; 
    [accessory setImage:[NSImage imageNamed:@"logosH.png"]]; 
    [myAlert setAccessoryView:accessory]; 

    [myAlert setIcon:[NSImage imageNamed:@"HipArthroplastyTemplating.tiff"]]; 

    [myAlert runModal]; 

вот код. Я пробовал каждое объяснение и решение, которое я могу найти в других вопросах, но не работает, я получаю сообщение NULL в консоли, и setIcon загружает что-нибудь.

Я предполагаю, что это что-то с пакетом или что-то в этом роде (я изучаю Objective-C, так что это ново)

Я использовал код примера разработчика какао, но не работает, я попытался загрузить изображение в этом проекте, и он там работает! ! но нет в моем проекте:/

любая помощь, любая идея? спасибо

+0

'myAlert SetIcon: [NSImage imageNamed: @ "HipArthroplastyTemplating.tiff"]],' отсутствует открывающая фигурная скобка. – nhgrif

+0

Является 'NSLog (@" NULL:/");' печать? – nhgrif

+0

Да, это печать – Giquo

ответ

5

Ваше изображение пуст, потому что оно не найдено. Это может произойти, если ваш образ не скопирован в ваш пакет или если имя файла неверно.

Важное примечание: очищайте проект перед каждым тестом, чтобы обеспечить обновление ресурсов.

Имя изображения должно содержать расширение, за исключением .png, где это не обязательно. Если у вас все еще есть проблема, то, скорее всего, файл отсутствует в вашем пакете. Для того, чтобы знать, если изображение копируется в пачке, нажмите на изображение в Project Navigator (⌘ + 1) и проверить в вашем File Inspector (⌘ + & # x2325; + 1) в Target Членство в котором установлен флажок рядом с именем вашего проекта.

Target Membership

Если проблема не решена, перейдите в Project Navigator на файле проекта (первый файл в верхней части). Убедитесь, что выбор слева - это название вашего проекта под номером Цель. Затем перейдите на закладку Build Phases и просмотрите раздел Ресурсы копировального пакета. Если вашего изображения нет в списке, вы должны добавить его с помощью кнопки + внизу.

enter image description here

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

  • Нет связанных вопросов^_^