Форум программистов, компьютерный форум CyberForum.ru

Программирование iOS/iPhone

Войти
Регистрация
Восстановить пароль
 
mobidevelop
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
#1

iPhone 5 images - название файла - Программирование iOS/iPhone

23.01.2013, 23:29. Просмотров 742. Ответов 5
Метки нет (Все метки)

Коллеги,
Кто сталкивался с необходимостью подкладывать отдельные картинки для iPhone 5 c его 4" дисплеем? Есть там возможность просто как-то по-другому назвать файл, чтобы он сам нашелся при загрузке вьюхи из xib? Ну типа как к именам картинок для ретины добавляется @2x? Почему-то суффикс -568h@2x у меня не прокатывает (и -568h тоже)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2013, 23:29     iPhone 5 images - название файла
Посмотрите здесь:

Objective-C Переключение экрана в iphone
Objective-C iphone->universal в Xcode
часы iPhone 5
iphone 3g
iphone 4 не активируется
Objective-C iPhone camera on iMac
Find my iphone
Objective-C Эмулятор iPhone на Xcode
Как из Iphone 4 сделать Iphone 4S?
Обновление iphone 4s
Перепрошивка Iphone

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Монфрид
1194 / 1004 / 153
Регистрация: 07.03.2012
Сообщений: 3,243
Завершенные тесты: 2
24.01.2013, 09:50     iPhone 5 images - название файла #2
icon, icon@2x файлы должен зваться, так в книжке сказано
mobidevelop
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
24.01.2013, 11:28  [ТС]     iPhone 5 images - название файла #3
Монфрид, спасибо за ответ, но я не про иконку приложения говорил. Опишу подробнее на свежую голову
Есть картинка, которая, согласно дизайну, занимает весь экран. Скажем, рамка вокруг текста. Соответственно, есть 3 версии этой картинки: для iPhone 3 и ниже, для iPhone 4 и для iPhone 5. Первые 2 названы frame.png и frame@2x.png. В xib написано, что у такой-то UIImageView в качестве image надо загрузить frame.png. В момент загрузки система смотрит на параметры экрана и если находит ретину, то грузит frame@2x.png. Знакомая история, правда?
Теперь внимание, вопрос: Как надо назвать 3-ю версию картинки (для retina 4"), чтобы во viewDidLoad не писать заклинания типа:
Objective-C
1
2
3
if ([UIScreen currentScreen].size.height == 568.0) {
frameView.image = [UIImage imageNamed:@"frame-568h@2x.png"];
}
?
Vorona
Peace 2 all shining faces
666 / 528 / 45
Регистрация: 05.03.2010
Сообщений: 1,271
24.01.2013, 23:54     iPhone 5 images - название файла #4
попробуйте категорию для UIImage
нашел по этой линке
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
+ (UIImage*)imageNamedForDevice:(NSString*)name {
  
  if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
  {
    if (([UIScreen mainScreen].bounds.size.height * [UIScreen mainScreen].scale) >= 1136.0f)
    {
      //Check if is there a path extension or not
      if (name.pathExtension.length) {
        name = [name stringByReplacingOccurrencesOfString: [NSString stringWithFormat:@".%@", name.pathExtension]
                                               withString: [NSString stringWithFormat:@"-568h@2x.%@", name.pathExtension ] ];
 
      } else {
        name = [name stringByAppendingString:@"-568h@2x"];
      }
      
      //load the image e.g from disk or cache
      UIImage *image = [UIImage imageNamed: name ]; 
      if (image) {
        //strange Bug in iOS, the image name have a "@2x" but the scale isn't 2.0f
        return [UIImage imageWithCGImage: image.CGImage scale:2.0f orientation:image.imageOrientation];
      }
      
    }
  }
  
  return [UIImage imageNamed: name ];
 
}
mobidevelop
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
25.01.2013, 00:18  [ТС]     iPhone 5 images - название файла #5
Vorona, спасибо. Идея интересная. А стандартного нормального решения таки нет, правильно? Жаль. Я надеялся... Все-таки категорию interface builder'у не скормишь. Но это по-любому лучше, чем if
Vorona
Peace 2 all shining faces
666 / 528 / 45
Регистрация: 05.03.2010
Сообщений: 1,271
25.01.2013, 04:08     iPhone 5 images - название файла #6
да, к сожалению пока что так, но решение валидно, не хак, и впринципе просто в использовании, так что все путем
Все-таки категорию interface builder'у не скормишь.
будем надеяться, что в будущем будут лучше покрывать новые обновления
Yandex
Объявления
25.01.2013, 04:08     iPhone 5 images - название файла
Ответ Создать тему
Опции темы

Текущее время: 05:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru