У меня есть подкласс UIView, который создается программным способом. У меня есть портретный и ландшафтный режим в моем приложении, которое использует Autolayout. Первоначально рама UIView устанавливается с использованием initWithFrame. Но когда ориентация меняется на пейзаж, CGRect UIView застрял в режиме портретной работы. Как я могу предупредить подкласс UIView, чтобы изменить CGRect на ориентацию устройства?Как изменить кадр подкласса UIView на ориентацию устройства, который программно создан?
Может ли кто-нибудь помочь мне в этом?
Это мой исходный код установки рамки для UIView:
- (id)initWithFrame:(CGRect)frame videoUrl:(NSURL *)videoUrl{
self = [super initWithFrame:frame];
if (self) {
_frame_width = frame.size.width;
int thumbWidth = ceil(frame.size.width*0.05);
_bgView = [[UIControl alloc] initWithFrame:CGRectMake(thumbWidth-BG_VIEW_BORDERS_SIZE, 0, frame.size.width-(thumbWidth*2)+BG_VIEW_BORDERS_SIZE*2, frame.size.height)];
_bgView.layer.borderColor = [UIColor grayColor].CGColor;
_bgView.layer.borderWidth = BG_VIEW_BORDERS_SIZE;
[self addSubview:_bgView];
вам нужно изменить рамку размер представления, когда приложение меняет свою ориентацию, не так ли? – vaibhav
@vaibhav yes. Мне нужно изменить UIView CGRect. –
проверить мои ans if suits .. – vaibhav