iOS判断屏幕横屏/竖屏
在屏幕发生翻转的时候会调用一些方法:
1
2
3- (void)viewWillLayoutSubviews;
- (void)viewDidLayoutSubviews;
- (void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id <UIViewControllerTransitionCoordinator>)coordinator注意:这些方法都是在
ViewController
里面,在view
中没有的
方法一:
- 使用
- (void)viewWillLayoutSubviews;
方法:
1 | - (void)viewWillLayoutSubviews { |
方法二:
- 使用
- (void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id <UIViewControllerTransitionCoordinator>)coordinator
size
: 屏幕翻转后的新的尺寸;coordinator
: 屏幕翻转过程中的一些信息,比如翻转时间等;
1 |
|
- 子控件提供了一个方法
- (void)rotateToLandscape:(BOOL)isLandscape;
根据传入的isLandscape
参数即可知道当前的屏幕状态,便于设置子控件在不同屏幕状态下的frame