iOS - можно растянуть UIImageView, но не UIButton?

Вот:

//UIImageView* stretchTest = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"image.png"]];
//[self addSubview:stretchTest];


UIButton *stretchTest = [UIButton buttonWithType:UIButtonTypeCustom];
[stretchTest setFrame:CGRectMake(0, 0, 400, 100)];
[stretchTest setBackgroundImage:[UIImage imageNamed:@"image.png"] forState:UIControlStateNormal];
[self addSubview:stretchTest];

stretchTest.contentStretch = CGRectMake(0.5, 0.5, 0, 0);
stretchTest.contentMode = UIViewContentModeScaleToFill;

CGRect frame = stretchTest.frame;
frame.size.height = 300;
stretchTest.frame = frame;

При использовании UIImageView (закомментировано выше) изображение растягивается соответствующим образом - закругленные углы сохраняют правильный радиус, потому что только центральный пиксель изображения растягивается .

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

И UIImageView, и UIButton являются подклассами UIView. Почему размер кнопки изменяется иначе, чем у imageView?

5
задан sol 23 February 2011 в 01:25
поделиться