UIImageView отображает изображение иначе, чем оригинал

Изображение справа — это то, что я создал в фотошопе. Затем я удалил весь текст и поместил его в изображение, как только я это сделал, произошло изменение цвета, а вертикальная линия потеряла резкость. Кто-нибудь еще сталкивался с подобной проблемой? Что я делаю? http://grab.by/1DuZ


person woody993    schedule 09.01.2010    source источник
comment
это скрин из симулятора или с устройства?   -  person willc2    schedule 09.01.2010
comment
Устройство, хотя оно выглядит так же в Interface Builder   -  person woody993    schedule 11.01.2010


Ответы (2)


Размеры правильные? Является ли позиция изображения целым числом? В этих случаях сглаживание слегка размоет изображение.

person kennytm    schedule 09.01.2010
comment
Да, похоже, наиболее вероятная проблема заключается в том, что он выровнял вид изображения по нецелочисленной координате в X или Y, или что он применил какое-то преобразование к виду. - person Brad Larson; 10.01.2010
comment
Да, размеры правильные, и Да, позиция является целым числом. Я не применил никаких преобразований. - person woody993; 10.01.2010
comment
Попробуйте использовать инструмент Core Animation в Instruments и выберите параметр Color Misaligned Images. Он должен окрашивать любые представления или слои, которые не выровнены по пикселям в вашем приложении. Возможно, супервизор где-то в иерархии не выровнен должным образом. - person Brad Larson; 12.01.2010

Одна вещь, с которой следует быть осторожным, заключается в том, что если ваше изображение имеет нечетное количество пикселей в любом измерении, то центрирование его на экране приведет к его смещению. Представьте, что у вас есть изображение размером 1x1 (всего один пиксель) и вы пытаетесь точно центрировать его на экране. Это невозможно сделать, потому что экран имеет четное количество пикселей в ширину и высоту. Вот почему лучше всегда использовать изображения с четными размерами, когда это возможно.

person n8gray    schedule 13.10.2010
comment
Слишком верно, только что обнаружил это на собственном горьком опыте. Изображение просто выглядело плохо, несмотря ни на что, пока я не добавил пиксель с обеих сторон в UIImageView. Таким образом, обходным путем для изображений с нечетными пикселями является создание UIImageView, содержащего изображение, с четным числом пикселей. Отключение половины пикселя определенно выглядит лучше, чем размытая иконка, особенно когда иконка уже сглажена и маленькая. - person n13; 20.03.2012