我有一个从.xib文件加载的topbarlogo(header)。我使用以下代码使视图适合屏幕显示,因为在xib中应用约束无法使它适合屏幕显示(即使我希望像往常一样对视图进行约束也可以,但是在xib):
- (void)viewDidLoad {
[super viewDidLoad];
NSArray *nibContents = [[NSBundle mainBundle] loadNibNamed:@"RaymioHeaderView" owner:nil options:nil];
CGRect screenBounds = [[UIScreen mainScreen] bounds];
UIView *topView = [nibContents lastObject];
topView.frame = CGRectMake(0, 0, screenBounds.size.width, 78);
[self.view addSubview:topView];
}
现在,当我将屏幕旋转到横向时,它保持相同的宽度而不是填充。我有点想在旋转后重画时会再次调用viewDidLoad。任何帮助表示赞赏。
最佳答案
是的,当界面旋转时,不会再次调用viewDidLoad。如果没有限制,我通常会改用autoresizingMask。topView.autoresizingMask = UIViewAutoresizingFlexibleWidth;