手机屏幕旋转时,试图控制器可以相应一些方法,可以再这些方法里自己布局视图
旋转方向的枚举类型
typedefNS_ENUM(NSInteger, UIInterfaceOrientation) {
UIInterfaceOrientationPortrait = UIDeviceOrientationPortrait,
UIInterfaceOrientationPortraitUpsideDown = UIDeviceOrientationPortraitUpsideDown,
UIInterfaceOrientationLandscapeLeft = UIDeviceOrientationLandscapeRight,
UIInterfaceOrientationLandscapeRight = UIDeviceOrientationLandscapeLeft
};
是否支持旋转
- (BOOL)shouldAutorotate
{
NSLog(@"%s",__FUNCTION__);
returnNO;
}
在旋转某一个方向时,是否支持旋转
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation
{
NSLog(@"%s",__FUNCTION__);
returnNO;
}
将要旋转时走的方法,可以判断要转向的方向
- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
NSLog(@"%s %f",__FUNCTION__,duration);
}
视图将要布局子视图
window调整显示的view controller的bounds,由于view controller的bounds发生变化,将会触发 viewWillLayoutSubviews 方法。
- (void)viewWillLayoutSubviews
{
NSLog(@"%s",__FUNCTION__);
}
视图完成布局子视图
- (void)viewDidLayoutSubviews
{
NSLog(@"%s",__FUNCTION__);
}
接着当前view controller的 willAnimateRotationToInterfaceOrientation:duration:
方法将会被调用。系统将会把该方法中执行的所有属性变化放到动animation block中。
- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
NSLog(@"%s %f",__FUNCTION__,duration);
}
旋转完成执行的方法
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation
{
NSLog(@"%s",__FUNCTION__);
}
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
网页名称:ios屏幕旋转-创新互联
本文地址:https://www.cdcxhl.com/article34/disdse.html
成都网站建设公司_创新互联,为您提供网站设计、移动网站建设、建站公司、网站排名、静态网站、网页设计公司
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联