最新要闻
- 长盈通2022年度分配预案:拟10送转3股派5元|焦点快看
- 当前速递!智能建筑工程技术丛书信息网络工程_对于智能建筑工程技术丛书信息网络工程简单介绍
- 当前热文:全球最赚钱手游!《王者荣耀》3月吸金14.7亿元
- 国产闪存、内存受阻 韩国三星、海力士赚到了:份额还能涨 环球速看
- 库里:我们全队都知道今晚再输的后果 没人想去感受那种感觉 热讯
- 保时捷:我们和中国车没什么可争的
- 不能忍 用户质疑微软:自己花钱买的Win系统 凭啥加广告
- 全球新资讯:曾高喊刹车失灵!车顶维权女车主现身上海车展:特斯拉若参展必不放过
- 搭载谷歌TV的索尼BRAVIAX80L电视在市场推出 天天新动态
- 4月21日地热能板块跌幅达2%-焦点热讯
- 7999元 宏碁发布新款44.5英寸带鱼屏显示器:165Hz 2K屏
- DC宇宙重启!电影《闪电侠》中国内地定档:6月16日上映
- 重点聚焦!上市5年 8TB机械盘价格终于跌破700元:牙膏挤爆了
- 新消息丨对话理想汽车总裁:造纯电 理想到底有多“抠”?
- 销量跌出前15后不指望中国市场!机构称韩国现代将在2026年成全球第一大车企
- 世界通讯!周鸿祎内部信:360员工不会被GPT淘汰,鼓励使用GPT拿绩效
广告
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
iOS 屏幕旋转的设置方法
(资料图片)
VC上屏幕旋转的方式有2种1.因重力导致的屏幕旋转条件:shouldAutorotate返回true,设备开启了屏幕旋转开关。设备发生重力旋转。2.单页面强制旋转条件:无。设置设备旋转方向。NSNumber *orientationTarget = [NSNumber numberWithInteger:isLaunchScreen ? UIInterfaceOrientationLandscapeRight : UIInterfaceOrientationPortrait];[[UIDevice currentDevice] setValue:orientationTarget forKey:@"orientation"];其中重力旋转要满足的条件至少2个,AppDelegate代理设置和ViewController页面设置而页面强制旋转只有满足AppDelegate代理设置就可以了。旋转开关权限优先级旋转开关权限优先级,决定了屏幕是否可以选择a.AppDelegate代理 > App-General设备设置/info.plist 支持屏幕旋转, (App-General设备设置和info.plist是同步联动的,它们是APP启动前的预设,AppDelegate代理是App启动后的动态更改,可以覆盖前面启动前的设置)b.ViewControll下的容器控制器也支持旋转,UINavigationController容器, UITabBarController容器设置的shouldAutorotate返回truec.当前ViewController设置的shouldAutorotate返回true。简单重力屏幕旋转设置1.AppDelegate代理设置
// ,AppDelegate代理是App启动后的动态更改,可以覆盖启动前的设置,所以它的优先级最大func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask { if isLaunchScreen { return .landscapeRight } else { return .portrait }}2.ViewController页面设置控制单个ViewController的旋转使用下面三个方法
// 1.是否支持屏幕旋转,只有返回true, 下面的两个方法才会执行open var shouldAutorotate: Bool { get }// 2.页面支持的屏幕方向@available(iOS 6.0, *)open var supportedInterfaceOrientations: UIInterfaceOrientationMask { get }// 3.页面进入时的屏幕方向@available(iOS 6.0, *)open var preferredInterfaceOrientationForPresentation: UIInterfaceOrientation { get }复杂重力屏幕旋转设置复杂重力屏幕旋转需要满足如下条件:容器控制器的屏幕旋转范围要大于等于孩子控制器的屏幕旋转范围,否则配置传递中断,无法做重力旋转。以普通的APP页面结构为例通常的APP页面ViewController组织结构为:UIApplicationwindow它的根控制器rootViewController为UITabBarControllerUITabBarController下有多个子控制器,它们用UINavigationController包裹着
UINavigationController->UIViewControllerUINavigationController->UIViewControllerUINavigationController->UIViewControllerUINavigationController->UIViewController根控制器设置UITabBarController容器控制器
verride var shouldAutorotate: Bool { return ((self.selectedViewController?.shouldAutorotate) != nil)}override var supportedInterfaceOrientations: UIInterfaceOrientationMask { return self.selectedViewController?.supportedInterfaceOrientations}override var preferredInterfaceOrientationForPresentation: UIInterfaceOrientation { return self.selectedViewController?.preferredInterfaceOrientationForPresentation}UINavigationController容器控制器
override var shouldAutorotate: Bool { return self.topViewController?.shouldAutorotateoverride var supportedInterfaceOrientations: UIInterfaceOrientationMask { return self.topViewController.supportedInterfaceOrientations}override var preferredInterfaceOrientationForPresentation: UIInterfaceOrientation { return self.topViewController.preferredInterfaceOrientationForPresentation}单ViewController设置
// ViewControlleroverride var shouldAutorotate: Bool { return true}override var supportedInterfaceOrientations: UIInterfaceOrientationMask { return .landscape}override var preferredInterfaceOrientationForPresentation: UIInterfaceOrientation { return .landscapeLeft}屏幕旋转的常见使用场景Modal出场方式因为没有了容器视图,可以剩去了中间2个容器的传递。对于APP中主要页面竖屏,部分页面横屏的解决方法。1.简单强制旋转a.在AppDelegate和单ViewController设置好选择属性后,强制旋转b.进入页面时强制横屏,退出时强制竖屏2.复杂重力旋转a.全局权限设置支持旋转的方向b.自定义Tab控制器和Navigation控制器,处理子ViewController与容器ViewController的旋转配置传递c.自定义ViewControl基类,添加基础旋转配置,d.子类ViewControl中做自定义旋转配置。旋转适配ViewController的旋转适配
/* This method is called when the view controller"s view"s size is changed by its parent (i.e. for the root view controller when its window rotates or is resized). If you override this method, you should either call super to propagate the change to children or manually forward the change to children. */@available(iOS 8.0, *)func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator)View的旋转适配
open func layoutSubviews() { if UIApplication.shared.statusBarOrientation == UIInterfaceOrientation.landscapeLeft { 旋转判断 }}名称解释1. UIDeviceOrientation 手机硬件的方向2. UlInterfaceOrientation 手机页面的方向3. UlInterfaceOrientationMask 手机页面支持的方向集合4.UIDevice.current.orientation获取手机硬件方向属性参考文章:https://www.jianshu.com/p/a354ca1890dehttps://www.likecs.com/show-307967522.html
关键词:
iOS 屏幕旋转的设置方法
又是浪费时间的一天-ssh的安装之路
全球时讯:Java中处理高精度数据计算
一季度我国承接RCEP成员国离岸服务外包执行额同比增长34.3%
长盈通2022年度分配预案:拟10送转3股派5元|焦点快看
当前速递!智能建筑工程技术丛书信息网络工程_对于智能建筑工程技术丛书信息网络工程简单介绍
当前热文:全球最赚钱手游!《王者荣耀》3月吸金14.7亿元
国产闪存、内存受阻 韩国三星、海力士赚到了:份额还能涨 环球速看
库里:我们全队都知道今晚再输的后果 没人想去感受那种感觉 热讯
保时捷:我们和中国车没什么可争的
不能忍 用户质疑微软:自己花钱买的Win系统 凭啥加广告
全球新资讯:曾高喊刹车失灵!车顶维权女车主现身上海车展:特斯拉若参展必不放过
搭载谷歌TV的索尼BRAVIAX80L电视在市场推出 天天新动态
世界新消息丨AT_abc297_e 题解
anaconda / conda 环境复制和迁移
window下cmd显示乱码
关于Nginx作为http-web服务器时对404错误页面的配置-以及安全加固-隐藏404的状态码
【财经分析】30年期国债期货首日交易平稳 助力打造长期稳定投融资生态
4月21日地热能板块跌幅达2%-焦点热讯
7999元 宏碁发布新款44.5英寸带鱼屏显示器:165Hz 2K屏
DC宇宙重启!电影《闪电侠》中国内地定档:6月16日上映
重点聚焦!上市5年 8TB机械盘价格终于跌破700元:牙膏挤爆了
新消息丨对话理想汽车总裁:造纯电 理想到底有多“抠”?
销量跌出前15后不指望中国市场!机构称韩国现代将在2026年成全球第一大车企
世界通讯!周鸿祎内部信:360员工不会被GPT淘汰,鼓励使用GPT拿绩效
003CCE Turbo配置容器网卡动态预热|焦点速看
Nvidia GPU Virtual Memory Management
成都燃气:2022年度净利润约4.92亿元 同比增加0.57%
焦点精选!债市日报:4月21日
环球速讯:一批“色狼”被官方公布,罚了!
6299元起!魅族20 INFINITY无界版入网:双向卫星通信比苹果更强
朱一龙、倪妮亮相北影节开幕红毯:新电影《消失的她》即将上映
青岛一鸵鸟在车流中狂奔引骚乱:当天就被抓回
冰淇淋事件闹大 有车主扣掉车标“宝马”二字 称感觉羞愧
F-150纯电皮卡充电时起火 三辆新车惨烈烧毁!福特:韩国电池的锅
初三英语听力训练技巧_初三英语听力训练 全球滚动
联动长三角,走进马鞍山!浦东历史博物馆首次实现展览走出去
每一磅碎牛肉使用多少预制炸玉米饼调味料?-天天短讯
劝人写码,千刀万剐——“前端已死”难道要成真了?|世界快报
【新华解读】外资3月持有人民币债券规模回升 外资有望享受更多政策红利 播资讯
山西一妈妈为催婚给25岁儿子床头摆稻草人:神回应看醉
天天简讯:沃尔沃新车轮胎5个螺丝少4个 女车主崩溃要退车
女子吐槽软卧车厢分配3男1女 12306回应:可找工作人员调换
目前适配最完美的小折叠!vivo X Flip评测:超好看超能打|世界观焦点
环球快资讯丨三星S23 Ultra用户入手小米13 Ultra:拿它当相机来用
贵州大方:樱桃产销两旺,果农笑迎丰收_焦点热文
看热讯:电脑如何改成光盘启动项-(电脑如何改成光盘启动项设置)
全球即时看!深圳二手房房贷与参考价解绑?深圳多家银行:目前根据评估价放贷
MySQL Execution Plan--DISTINCT语句优化
Python函数与码复用
Appuploader安装指南
全志Uboot fdt修改DTS进行临时调试的方法
热门看点:ReactNative 打包发布 Android 应用
世界实时:BBBA德系“四兄弟”组合解散!宝沃中国申请破产
夏季必备:GLM夏季薄款七分/九分/长裤34.9元新低抄底
鸿星尔克请网友吃冰淇淋 获赞大气!宝马MINI感受下 环球消息
半年内5名机车网红车祸身亡 又见两只脚够不着地女骑:大货身旁疾驰
刘慈欣在联合国被“催更”:当年奥巴马连发两封邮件要新书 环球短讯
它强任它强,驾控随我心,斯巴鲁Crosstrek全新上市!
全球速看:打好软件国产化攻坚战,闪信科技面向人工智能和数字经济进行新一代升级
【快播报】DRF的权限组件(源码分析)
物联网常见协议之Amqp协议及使用场景解析 当前报道
每日报道:本轮系列赛前两战,詹姆斯面对布鲁克斯防守打出14中7
【财经分析】聚焦可持续转型升级 绿色债券领域蓬勃发展
【财经分析】供需趋松压力增大 铁矿石大幅下挫-全球观察
不同档位DLSS对画面帧数的影响究竟有多大?看完秒懂|天天通讯
老人无牌无证驾驶老头乐从河南跑到江苏 还要周游全国
10分钟补能400km 理想首批4C超级充电站上线运营:女生也能拎得动-天天日报
腾讯起诉《王者荣耀》代练赢了:构成不正当竞争 获赔60万
马云被聘为香港大学荣誉教授:聘期三年|天天速看料
全球即时看!项目播报 | 璞华×江苏鼎为云,打造数字化“采云链”体系,赋能新能源机电行业生态化
环球关注:Excel的列数如何用数字表示?
WCF教程_编程入门自学教程_菜鸟教程-免费教程分享 每日速看
当前资讯!启动“盟圈”,开拓聚才引才“新阵地”
热文:推广央行数字货币,牙买加财政部出台激励计划
中国人民解放军陆军第九四七医院与咸阳职业技术学院签订校企合作协议 当前聚焦
每日快报!女子骑摩托车遇沉降路段摔倒遭碾压身亡 竟担主责:官方重申不服可上诉
世界百事通!致敬《流浪地球2》国内首个类ChatGPT模型MOSS正式开源
画面过度拟真被质疑造假:《Unrecord》官方发布引擎录像自证清白_百事通
华为回应孟晚舟要去美国出差传言:纯属造谣
传小鹏P7接亲车队开辅助驾驶连环追尾 小鹏回应:拿普通事故抹黑
贵州:一片茶叶走出的乡村振兴路-速递
环球看点!发现有检查“黑车”司机扔下车跑了 留下一车乘客发呆
【GPT开发】人人都能用ChatGPT4.0做Avatar虚拟人直播
浅谈日出日落的计算方法以及替代工具 - 日出日落 API-精彩看点
这款产品,竟然用了二千多年才爆火?|世界最资讯
当前焦点!比亚迪李云飞:比亚迪今年要卖300万台车
德国玩家竟如此钟爱AMD显卡!销量超过NVIDIA几乎20% 每日速讯
青岛国家深远海绿色养殖试验区养殖鱼类首次成功度夏-天天快讯
环球观点:尚无特效药!国产带状疱疹疫苗全国接种启动:一针能管10年
半价手慢无:卜珂巧克力夹心蛋卷14.9元/3罐 速递
电影情节成真!加拿大机场1.6吨黄金被盗 价值超亿美元_世界快讯
上演“史诗级灾难公关”:宝马蒸发市值可买约5亿个冰淇淋
可以再等等!iQOO 12系列在路上:200W超快闪充-天天新资讯
香菜饼最简单的做法,只需一把香菜,2个鸡蛋!
焦点热门:AIGC的阿克琉斯之踵
超过50多个热门的免费可用 API 分享|滚动
火山引擎 DataTester 3 大功能升级:聚焦敏捷、智能与易用,帮助企业降本增效
天天热讯:三峡艺术高中分数线(三峡艺术高中)
新华指数|钢“财”说:库存延续下行,基本面仍待改善|今日要闻