stretchableImageWithLeftCapWidth делает углы размытыми - PullRequest
0 голосов
/ 07 сентября 2011

У меня есть коробка, которую я хочу расширять только по ширине, сохраняя при этом закругленные углы, которые у меня есть. Я сделал графику в фотошопе. и это точно 13px в ширину, поэтому 6 для каждого угла и 1 для середины, чтобы повторить.

UIImage* img = [[UIImage imageNamed:@"screen_displayer_rounded.png"] stretchableImageWithLeftCapWidth:6 topCapHeight:6];
    CGRect rect = CGRectMake(272.0f, 14.0f, 100.0f, 30.0f);
    UIImageView* imgView = [[UIImageView alloc] initWithFrame:rect];
    [imgView setImage:img];

Может кто-нибудь сказать мне, почему это может происходить?

Спасибо!

Ответы [ 3 ]

1 голос
/ 07 сентября 2011

Вы должны проверить, не заканчивается ли представление в нецелочисленной позиции.Если вы выберете «Запустить инструмент повышения производительности> Базовая анимация» и установите флажок «Цвет смещенных изображений», все смещенные изображения будут отображаться фиолетовым цветом.

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

1 голос
/ 07 сентября 2011

Я обнаружил, что вы не можете просто полагаться на stretchableImageWithLeftCapWidth, чтобы заставить его правильно изменить размер.

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

Извлекаем яблочные документы UIView относительно свойства contentStretch.

0 голосов
/ 07 сентября 2011

Просто проверяю - возможно, вы просматриваете изображение без сетчатки на дисплее сетчатки? Это определенно растянет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...