| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 移动开发 -> iOS同时适配iPad横屏和iPhone竖屏 -> 正文阅读 |
|
[移动开发]iOS同时适配iPad横屏和iPhone竖屏 |
iPad横屏、iPhone竖屏 1、启动页LaunchImage 新建一个Image Set,并且命名为LaunchImage(或者其他的名字),准备iPad横屏、iPhone竖屏的启动页,然后在Finder中打开LaunchImage.imageset找到Contents.json,然后修改内容
filename:图片的名称,不可以重复 idiom:设备,iphone或ipad,全小写 scale:图片倍数 然后在xcode中查看是否显示正常,不正常再调整 在LaunchScreen中添加ImageView,并且添加全屏的约束 注意:Bottom和Top都是连Superview的 项目的General里面启动选择LaunchScreen 在Info.plist中添加iPad和iPhone支持的屏幕方向 上面iPhone只支持竖屏,iPad只支持横屏,这样APP启动的时候,iPhone的启动页是竖屏,iPad的启动页是横屏 发现网上还有另外一种方法设置启动页方向的,我没试过,有兴趣的可以试试,链接在下面 iOS LaunchImage_auccy的博客-CSDN博客 但是,iPhone项目中有个别界面要求是横屏,需要作特殊处理 在AppDelegate中添加以下代码
?因为iPhone个别界面需要支持横屏,所以返回UIInterfaceOrientationMaskAll 在根ViewController中添加以下代码:
这样每一个继承根ViewController的ViewController都支持同样的屏幕方向 iPhone中个别需要横屏的ViewController不继承根ViewController 然后在需要横屏的OneViewController中添加以下设置屏幕方向方法
如果允许旋转,系统会报错 然后在ViewWillAppear中添加以下代码
上面的方法可以通过App Store的审核,可以放心使用,这样设置是为了让界面的其他组件知道当前的屏幕方向,以正确显示 然后在ViewDidDisappear中将屏幕方向设置回来,防止退出该界面后,其他界面变成横屏
有可能OneViewController加载完成后是竖屏,然后又变横屏,导致横屏的界面异常,这时候可以在ViewDidAppear中重新加载一次界面,这样就完美了
如果在OneViewController中存在UIAlertController,弹框的时候会报错,可以新建一个UIAlertController的category,然后添加屏幕方向设置的代码即可
|
|
移动开发 最新文章 |
Vue3装载axios和element-ui |
android adb cmd |
【xcode】Xcode常用快捷键与技巧 |
Android开发中的线程池使用 |
Java 和 Android 的 Base64 |
Android 测试文字编码格式 |
微信小程序支付 |
安卓权限记录 |
知乎之自动养号 |
【Android Jetpack】DataStore |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 7:30:29- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |