Xcode 6 - xcassets для универсальной поддержки изображений
В настоящее время работает над универсальным проектом SpriteKit. Я буду поддерживать следующие устройства:
iPhone 4/s,
iPhone 5/c/s,
Айфон 6,
iPhone 6 +
iPad не-ret,
IPad сетчатки
![enter image description here]()
Я запутался в части iPhone. У меня уже есть 4 версии для моего справочного спрайта для 4-х различных разрешений экрана iPhone. Но к чему?
Я знаю, что 3x для 6+, и я думаю, что 5/c/s отправляется в Retina 4 2x, но я не знаю, где iPhone4/s и 6 идут. Кто-нибудь знает?
Заметьте, когда я создаю Launch Image внутри моего файла xcassets, мне показываются эти параметры, в основе которых лежит все поддерживающее устройство. Просто интересно, почему это не так, если вы создаете набор изображений ![enter image description here]()
Также как вы, ребята, подходите к созданию образов/спрайтов для универсального приложения? Теперь, когда новый iPhone 6 и 6 плюс отсутствуют, у меня есть еще 2 разрешения для поддержки, которые все еще запутывают меня, поскольку я все еще новичок.
Ответы
Ответ 1
Это немного запутанно - вот как я это понимаю (это относится к верхнему изображению):
-
1x изображения для оригинального iPhone через 3GS - "стандартные" устройства разрешения (экраны 3,5 дюйма).
-
2x изображения для iPhone 4 и 4S (3.5 "экраны сетчатки), а также используются для iPhone 6.
-
Retina 4 2x предназначены для iPhone 5 и 5s (экраны сетчатки 4 ")
-
3x изображения для нового экрана iPhone 6+ (5.5 "супер-Retina [3x])
Я считаю, что экран iPhone 6 (4.7 ") будет использовать изображения Retina 4 2x, но мне пришлось бы его протестировать.
Заметьте, когда я создаю Launch Image внутри моего файла xcassets, мне показываются эти параметры, в основе которых лежит все поддерживающее устройство. Просто интересно, почему это не так, если вы создаете набор изображений
Если вы сравниваете два изображения, у нижнего есть все, что верхнее, за исключением 1x iPhone-графики. Вам это не нужно, если вы поддерживаете только iOS 7 и выше, так как iOS 7 не работает на каких-либо устройствах, не связанных с сетью Retina. Честно говоря, я не понимаю, почему у верхнего изображения есть 1x форма для iPhone-формы - возможно, потому, что вы проверили окно "iPhone" на боковой панели?
Также как вы, ребята, подходите к созданию образов/спрайтов для универсального приложения.
Для большинства не полноэкранных изображений (например, логотипа) у вас действительно есть только 3 разрешения для поддержки - стандартные (1x), Retina (2x) и iPhone 6+ (3x). Это просто другое качество изображений, не совсем разных размеров. Поэтому, если у вас есть изображение 10x10 на стандартном устройстве, это означает, что вам нужно изображение 20x20 на устройстве Retina и 30x30 изображение на iPhone 6+. На всех устройствах они будут отображаться как изображение 10x10.
Отличным инструментом, который я использовал для управления различными разрешениями значков, является iConify.
Я создаю их с максимальным размером, который мне нужен (30x30 [@3x] для изображения, которое я хочу быть 10x10 на устройстве), затем сохраните его как png и измените размер копий на 20x20 [@2x] и 10x10 [стандартный ]. Лучшим решением было бы создание и использование векторной графики, которая бы изменила размер до любого размера.
Ответ 2
В 1x месте изображение с разрешением 320 x 480.
В 2x месте изображение с разрешением 640 x 960.
В Retina 4 2x место изображение с разрешением 640 x 1136.
в 3x месте изображение с разрешением 1242 x 2208.
Изображения Retina 4 2x будут масштабироваться до разрешения 750 x 1334.
Изображения 3x уменьшатся до разрешения 1080 x 1920.
Вы также можете посетить эти ссылки для изображений с экрана запуска:
http://www.paintcodeapp.com/news/iphone-6-screens-demystified
http://www.paintcodeapp.com/news/ultimate-guide-to-iphone-resolutions
Для всех других изображений разрешение и размер:
https://developer.apple.com/ios/human-interface-guidelines/graphics/launch-screen/
https://developer.apple.com/ios/human-interface-guidelines/graphics/image-size-and-resolution/
https://developer.apple.com/ios/human-interface-guidelines/graphics/custom-icons/
Как использовать Image.xcassets:
https://www.youtube.com/watch?v=_36Y6rDcKP0&list=PLXCowKcXAVgrCe2Lezv0acRf4adQLshv2
Надеюсь, что это будет более полезно.
Ответ 3
Если у вас есть изображения запуска в файле xcasset, вы можете сделать следующее в Xcode 6.
Выберите ресурс образа запуска, выберите конкретное разрешение (1x, 2x, Retina 4 и т.д.) и откройте инспектор атрибутов (см. рисунок ниже).
![enter image description here]()
В разделе "Изображение" у вас будет атрибут "Ожидаемый размер".
![enter image description here]()
Ответ 4
Внутри images.xcassets вы можете добавить поддержку различных устройств, щелкнув правой кнопкой мыши, как показано на снимке
![enter image description here]()
Изменить: Ну, похоже, что это не работает, когда я перетаскиваю n кадровых изображений на заполнители. Он перепутался, как показано ниже.
![enter image description here]()
Я не знаю, почему это действует на моем Xcode 6.4.
Edit # 2:
Я вижу здесь ошибку. Я могу выбрать "Universal" вместе с любым устройством, щелкнув правой кнопкой мыши, как вы можете видеть на первом изображении выше. Но через инспектора атрибутов я могу правильно выбрать "универсальные" или конкретные устройства, как показано здесь.
![enter image description here]()
Edit # 3:
В Xcode 7 инспектор атрибутов был изменен, и теперь он дает параметр такой же, как правый щелчок. Поэтому вместо "универсального" или определенного устройства теперь предлагается выбрать все.
![введите описание изображения здесь]()
Ответ 5
Есть один инструмент: Генератор AVXCassets, с помощью которого вы можете напрямую генерировать файл XCAssets для всех ваших значков и изображений одним щелчком мыши.
надеюсь, вам понравится.
![введите описание изображения здесь]()