Изменить размер UIImageView или другого элемента управления в Interface Builder, используя процент - PullRequest
0 голосов
/ 15 июня 2011

У меня есть UIImageView в построителе интерфейса, и его текущий размер составляет 100px x 100px.Я знаю, как изменить его размер, используя маркеры изменения размеров в углах и инспектор атрибутов.

То, что я хочу, чтобы изменить его размер, например, до фиксированного процента.50%, чтобы новый размер автоматически составлял 50px x 50px.

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

Спасибо,

1 Ответ

0 голосов
/ 15 июня 2011

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

@interface UIImageView (Resizing)
- (void)resizeToPercentSizeOfOriginal:(CGFloat)percentage; // any value between 0 and 100
@end

@implementation UIImageView (Resizing)

- (void)resizeToPercentSizeOfOriginal:(CGFloat)percentage {
    if ( percentage < 0 || percentage > 100.0 ) {
        // Deal with it.
    }

    CGSize currentSize = self.frame.size;
    CGSize expectedSize = CGSizeMake(currentSize.width * percentage, currentSize.height * percentage);
    CGRect theFrame = self.frame;
    frame.size = expectedSize;
    self.frame = theFrame;
}

@end

Вы можете поместить это в UIImageView+Resizing.h и UIImageView+Resizing.m и импортировать заголовок для использования метода.

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