2016-11-09 9 views
0

У меня вопрос об активах. Когда у меня есть изображение, которое должно быть на половине экрана, сколько файлов изображений мне нужно? Для iPhone 5 мне нужны @ 1x, @ 2x и @ 3x; для iPhone 6 мне нужны @ 1x, @ 2x и @ 3x; для iPhone 7 ...Размеры изображения в iOS

Это правильный путь? Если это произойдет, мне придется получить размер устройства с помощью кода, а затем, в зависимости от размера, используйте правильный образ?

Если это неправильный путь, и я должен сделать уникальное изображение в формате PDF с помощью одного масштабируемого изображения, каков должен быть размер в пикселях (ширина и высота) для этого изображения.

Это то, что я борюсь с, потому что она отличается от использования неподвижных изображений, где все, что нужно это @ 1x, 2x @ и @ 3x для всех устройств

Спасибо большое за ваше время!

+0

iPhone 5 нужно только '@ 2x'. Для iPhone 6 требуется только '@ 2x'. IPhone 6+ нужен только '@ 3x' и т. Д. – rmaddy

+0

Ну да, но если мне нужно @ 2x для разных устройств (разные высоты), мне нужно получить размер устройства с помощью кода, а затем поместить правильное изображение ? Правильно ли это? –

+0

@ DanielFernandezY no you dont, он автоматически получит правильное изображение для установки, единственное, что вам нужно - это имя без суффикса – Tj3n

ответ

1

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

В качестве примера, если вы используете раскадровку, просто присвойте свойству изображения UIImageView изображение, содержащееся в вашей папке xcassets, и стрела - во время выполнения правильный размер изображения будет использоваться на основе используемого устройства. Предполагается, что в XCAssets вы указали размеры изображения @ 1x, @ 2x и @ 3x.

Убедитесь, что перетаскивать изображения во все 3 коробки с искателем:

enter image description here

+0

Это работает для изображений фиксированного размера, например, для значков. Он не работает для изображений на экране устройства. IPhone 5 и 6 - это '@ 2x', но у них разные экраны. – rmaddy

+0

Я вижу, в этом случае это будет зависеть от того, что вы хотите отобразить. Если это сплошной цвет, просто используйте ограничения автоопределения, чтобы изображение занимало половину экрана, как вы этого хотите. Если у вас есть два конкретных изображения, построенных точно для iPhone 5 и 6, тогда да, вам нужно будет определить тип устройства. –

+0

Поэтому я должен определить тип устройства, а затем выбрать изображение, которое я хочу использовать. Это означает, что мне нужно будет @ 2x для iPhone 5, @ 2x для iPhone 6/6s, @ 3x для iPhone 6+/6s + ... Это лучший способ пойти? или я могу использовать что-то подобное с PDF-изображениями? –