imageWithContentsOfFile не работает с iPhone 5

Я делаю приложение для совместимости с iPhone 4 и iPhone 5. Для установки изображения я использую код: [UIColor colorWithPatternImage: [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"aaaa" ofType:@"png"]]]

  1. Он отлично работает на симуляторе и устройстве iPhone 4, но не работает на симуляторе iPhone5. У меня пока нет айфона 5. может ли кто-нибудь сказать мне, будет ли это работать на устройстве iPhone 5?

  2. Если я использую другое имя для изображения, которое будет использоваться для iPhone 5, и я не пишу @2x с именем изображения, то [UIColor colorWithPatternImage: [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"aaaa" ofType:@"png"]]] отлично работает на симуляторе iPhone 5. Может ли кто-нибудь сказать мне, будет ли это работать на устройстве iPhone 5?

  3. Или есть другой выход, как установить изображения на айфон 5 с помощью [UIColor colorWithPatternImage: [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"aaaa" ofType:@"png"]]].

Пожалуйста, предложите.

Спасибо.


person NiKKi    schedule 08.03.2013    source источник
comment
просто попробуйте напечатать путь к ресурсу [[NSBundle mainBundle] pathForResource:@aaaa ofType:@png]] и убедитесь, что он не равен нулю   -  person prasad    schedule 08.03.2013
comment
Его печать пути. Как это работает для iPhone 4. Это работает для iPhone 5, если я напишу имя изображения как aaaa.png@2x в коде..   -  person NiKKi    schedule 11.03.2013


Ответы (1)


да. Это работает и для устройства iPhone 5. Просто скопируйте изображение с другим именем.

if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
{
    CGSize result = [[UIScreen mainScreen] bounds].size;
    if(result.height == 568)
    {
        // iPhone 5
        [appConfig setLogoURL:[NSString stringWithFormat:@"%@%@", @"file://localhost", [[NSBundle mainBundle] pathForResource:@"header5" ofType:@"png"]]];
    }
    else {
        [appConfig setLogoURL:[NSString stringWithFormat:@"%@%@", @"file://localhost", [[NSBundle mainBundle] pathForResource:@"header" ofType:@"png"]]];
    }
}
else {
        [appConfig setLogoURL:[NSString stringWithFormat:@"%@%@", @"file://localhost", [[NSBundle mainBundle] pathForResource:@"header" ofType:@"png"]]];
}
person Kiranpal Reddy    schedule 15.04.2013