отображать изображение в сетчатке iphone 4 - PullRequest
1 голос
/ 10 февраля 2011

Я показываю изображение с высоким разрешением в iphone 4 и устанавливаю размер рамки просмотра изображения, как показано ниже: imageFrameNormal.size.width = 470;imageFrameNormal.size.height = 625;

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

Thx

Ответы [ 2 ]

6 голосов
/ 10 февраля 2011

Вы должны использовать те же размеры на сетчатке и нормальных дисплеях. Например, у вас есть просмотр изображения размером 100x100. На устройстве Retina вы должны использовать тот же размер 100x100 (без изменений в вашем коде). Однако вам лучше использовать изображение в высоком разрешении (2х размер). Для этого вам нужно правильно назвать его: image.png - изображение нормального размера image@2x.png - изображение в 2 раза больше.

Когда вы звоните

UIImage* img = [UIImage imageNamed: @"image.png"];

image.png будет использоваться на обычном дисплее и image@2x.png на сетчатке (iOS делает это автоматически).

2 голосов
/ 10 февраля 2011

Система координат дисплея сетчатки не в пикселях, а в «точках».Дисплей iPhone, будь то сетчатка или наследство, всегда будет 320х480 точек.При взаимодействии с любыми параметрами, такими как рамка, размер, происхождение и т. Д., Вам нужно помнить, что нужно использовать точки вместо пикселей.ОС выполнит «преобразование» между точками и пикселями.

Более подробное объяснение см. В Точки против пикселей в Руководстве по рисованию и печати для iOS.

...