前言:
框架对屏蔽旋转做了很全面的封装处理,本篇来介绍一下使用屏幕旋转的相关功能。
屏幕旋转的相关方法定义:
#pragma mark 屏幕旋转 //!屏幕旋转事件:【 return true 系统调用刷新布局([self.view refleshLayoutAfterRotate];);return false 用户自己手动控制】 @isEventRotate 是旋转屏幕、还是点击事件触发。 typedef BOOL(^OnRotate)(NSNotification* notify,BOOL isEventRotate); //!屏幕旋转事件。 @property (nonatomic,assign) OnRotate onDeviceRotate; //!设置当前视图支持的屏幕旋转方向 -(void)setSupportedInterfaceOrientations:(UIInterfaceOrientationMask)orientation;//!手动调用旋转屏幕。 -(STController*)rotateOrientation:(UIInterfaceOrientation)direction;
下面介绍具体的使用:
1、【手动】设置屏幕【默认】的旋转
-(void)onInit { [self rotateOrientation:UIInterfaceOrientationLandscapeRight];//设置旋转方向。 }
在初始化的地方,设置旋转,进入到该界面时,屏幕会自动旋转。
2、【允许】系统自动的屏幕旋转
-(void)onInit { [self rotateOrientation:UIInterfaceOrientationLandscapeRight];//设置默认方向。 self.onDeviceRotate = ^BOOL(NSNotification *notify,BOOL isEventRotate) { //返回true允许旋转布局、false不允许旋转布局。 return true; }; }
设置onDeviceRote属性后,可以除了可以控制系统屏蔽旋转,连手工旋转的也可以拦截。
3、设置【允许】系统自动旋转的方向。
-(void)onInit { [self rotateOrientation:UIInterfaceOrientationLandscapeRight]; [self setSupportedInterfaceOrientations:UIInterfaceOrientationMaskLandscape]; self.onDeviceRotate = ^BOOL(NSNotification *notify,BOOL isEventRotate) { return true; }; }
PS:
1、手工旋转的,不受支持的方向的约束。
2、设置支持的旋转方向,只能约束系统自动旋转手机产生的事件。
版权声明:本文原创发表于 博客园,作者为 路过秋天 本文欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权。 |
个人微信公众号![]() |
Donation(扫码支持作者):支付宝:![]() |
Donation(扫码支持作者):微信:![]() |
![]() |
标签:
ios
, Sagit.Framework
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)
2013-09-14 当下移动互联网创业比较容易吸引投资的项目