Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在iOS中获取屏幕宽度和高度?

如何在iOS中获取屏幕宽度和高度?

提问于 2017-12-19 07:29:14
回答 2关注 0查看 1K

如何获得iOS屏幕的尺寸?

目前,我使用:

代码语言:txt
AI代码解释
复制
lCurrentWidth = self.view.frame.size.width;
代码语言:txt
AI代码解释
复制
lCurrentHeight = self.view.frame.size.height;

在viewWillAppear:和willAnimateRotationToInterfaceOrientation:duration:

我第一次得到整个屏幕的大小。第二次我得到屏幕减去导航栏。

回答 2

akjok54

发布于 2017-12-19 08:00:56

简单的办法:

代码语言:txt
复制
代码语言:txt
复制
代码语言:txt
AI代码解释
复制
- (CGRect)getScreenFrameForCurrentOrientation {
代码语言:txt
AI代码解释
复制
    return [self getScreenFrameForOrientation:[UIApplication sharedApplication].statusBarOrientation];
代码语言:txt
AI代码解释
复制
}
代码语言:txt
复制
代码语言:txt
AI代码解释
复制
- (CGRect)getScreenFrameForOrientation:(UIInterfaceOrientation)orientation {
代码语言:txt
复制
代码语言:txt
AI代码解释
复制
    CGRect fullScreenRect = [[UIScreen mainScreen] bounds];
代码语言:txt
复制
代码语言:txt
AI代码解释
复制
    // implicitly in Portrait orientation.
代码语言:txt
AI代码解释
复制
    if (UIInterfaceOrientationIsLandscape(orientation)) {
代码语言:txt
AI代码解释
复制
      CGRect temp = CGRectZero;
代码语言:txt
AI代码解释
复制
      temp.size.width = fullScreenRect.size.height;
代码语言:txt
AI代码解释
复制
      temp.size.height = fullScreenRect.size.width;
代码语言:txt
AI代码解释
复制
      fullScreenRect = temp;
代码语言:txt
AI代码解释
复制
    }
代码语言:txt
复制
代码语言:txt
AI代码解释
复制
    if (![[UIApplication sharedApplication] statusBarHidden]) {
代码语言:txt
AI代码解释
复制
      CGFloat statusBarHeight = 20; // Needs a better solution, FYI statusBarFrame reports wrong in some cases..
代码语言:txt
AI代码解释
复制
      fullScreenRect.size.height -= statusBarHeight;
代码语言:txt
AI代码解释
复制
    }
代码语言:txt
复制
代码语言:txt
AI代码解释
复制
    return fullScreenRect;
代码语言:txt
AI代码解释
复制
} 

最爱开车啦

发布于 2017-12-19 08:00:22

你需要依据视图大小来匹配屏幕大小,正如您所看到的,情况并非总是如此。如果您需要屏幕大小,您应该查看代表屏幕本身的对象,如下所示:

代码语言:txt
AI代码解释
复制
CGRect screenRect = [[UIScreen mainScreen] bounds];
代码语言:txt
AI代码解释
复制
CGFloat screenWidth = screenRect.size.width;
代码语言:txt
AI代码解释
复制
CGFloat screenHeight = screenRect.size.height;

更新分割视图:在评论中,德米特里问道:

如何在分割视图中获得屏幕大小?

上面给出的代码报告了屏幕的大小,即使在分屏模式下也是如此。当你使用分屏模式时,你的应用程序的窗口会改变。如果上面的代码没有给你所期望的信息,那么就像OP一样,你正在看错误的对象。在这种情况下,你应该看看窗口而不是屏幕,就像这样:

代码语言:txt
AI代码解释
复制
CGRect windowRect = self.view.window.frame;
代码语言:txt
AI代码解释
复制
CGFloat windowWidth = windowRect.size.width;
代码语言:txt
AI代码解释
复制
CGFloat windowHeight = windowRect.size.height;
和开发者交流更多问题细节吧,去 写回答
相关文章
JavaScript 获取屏幕的高度和宽度
screen.availHeight:显示浏览器的屏幕的可用高度(这个可用高度不包括分配给半永久特性(如屏幕底部的任务栏)的垂直空间。)
aehyok
2018/09/11
7.5K0
JavaScript  获取屏幕的高度和宽度
JavaScript、Jquery获取屏幕的宽度和高度
在日常的项目中经常需要获取屏幕的宽度或者高度,简单记录一下: Javascript方法获取: document.body.clientWidth //网页可见区域宽 document.body.clientHeight //网页可见区域高 document.body.offsetWidth //网页可见区域宽(包括边线的宽) document.body.offsetHeight //网页可见区域高(包括边线的高) document.body.scrollWidth //网页正文全文宽 document.b
德顺
2019/11/13
5.6K0
如何在onCreate中获取View的高度和宽度
在开发过程中经常需要获取到View的宽和高,可以通过View.getWidth()和View.getHeight()来得到宽高。然而新手们经常在onCreate方法中直接调用上面两个方法得到的值是0!
阳仔
2019/07/31
5.9K0
JavaScript获取高度和宽度
屏幕分辨率为:screen.width screen.height 屏幕可用大小:screen.availWidth screen.availHeight 网页可见区域宽:document.body.clientWidth 网页可见区域高:document.body.clientHeight 网页可见区域宽(包括边线的宽):document.body.offsetWidth 网页可见区域高(包括边线的宽):document.body.offsetHeight 网页正文全文宽:document.b
苦咖啡
2018/05/07
4K0
微信小程序-自动适配屏幕高度和宽度
微信小程序里面的height和width有几种单位,分别是 rpx px vh 和 vw。
叉叉敌
2019/08/16
12K0
JS获取浏览器窗口大小 获取屏幕,浏览器,网页高度宽度
网页可见区域宽:document.body.clientWidth 网页可见区域高:document.body.clientHeight 网页可见区域宽:document.body.offsetWidth (包括边线的宽) 网页可见区域高:document.body.offsetHeight (包括边线的宽) 网页正文全文宽:document.body.scrollWidth 网页正文全文高:document.body.scrollHeight 网页被卷去的高:document.body.scrollTop 网页被卷去的左:document.body.scrollLeft 网页正文部分上:window.screenTop 网页正文部分左:window.screenLeft 屏幕分辨率的高:window.screen.height 屏幕分辨率的宽:window.screen.width 屏幕可用工作区高度:window.screen.availHeight 屏幕可用工作区宽度:window.screen.availWidth
SAP梦心
2022/05/10
8.5K0
Android 获取屏幕高宽度,密度,通知栏高度,截图等常用方法
版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/lyhhj/article/details/49105255
Hankkin
2018/09/06
2.2K0
OC中获取一串字符串的高度(宽度确定)或宽度(高度确定)
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/52937475
用户1451823
2018/09/13
2.7K0
JavaScript 获取图片的宽度和高度的方法
因为加载图片是异步的,在图片的相关数据没有加载完之后,宽高都是默认为0,所以我们要给imgDom增加个onload方法。
李维亮
2021/07/08
2.9K0
JS获取浏览器窗口大小 获取屏幕,浏览器,网页高度宽度(转)
网页可见区域宽:document.body.clientWidth  网页可见区域高:document.body.clientHeight  网页可见区域宽:document.body.offsetWidth (包括边线的宽)  网页可见区域高:document.body.offsetHeight (包括边线的宽)  网页正文全文宽:document.body.scrollWidth  网页正文全文高:document.body.scrollHeight  网页被卷去的高:document.body.scrollTop  网页被卷去的左:document.body.scrollLeft  网页正文部分上:window.screenTop  网页正文部分左:window.screenLeft  屏幕分辨率的高:window.screen.height  屏幕分辨率的宽:window.screen.width  屏幕可用工作区高度:window.screen.availHeight  屏幕可用工作区宽度:window.screen.availWidth  HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth  scrollHeight: 获取对象的滚动高度。  scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离  scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离  scrollWidth:获取对象的滚动宽度  offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度  offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置  offsetTop:获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置  event.clientX 相对文档的水平座标  event.clientY 相对文档的垂直座标  event.offsetX 相对容器的水平坐标  event.offsetY 相对容器的垂直坐标  document.documentElement.scrollTop 垂直方向滚动的值  event.clientX+document.documentElement.scrollTop 相对文档的水平座标+垂直方向滚动的量  IE,FireFox 差异如下:  IE6.0、FF1.06+:  clientWidth = width + padding  clientHeight = height + padding  offsetWidth = width + padding + border  offsetHeight = height + padding + border  IE5.0/5.5:  clientWidth = width - border  clientHeight = height - border  offsetWidth = width  offsetHeight = height  (需要提一下:CSS中的margin属性,与clientWidth、offsetWidth、clientHeight、offsetHeight均无关)
山河木马
2019/03/05
16.4K0
win10 uwp 获取窗口的坐标和宽度高度 获取可视范围获取当前窗口的坐标和宽度高度获取最前窗口的范围
本文会经常更新,请阅读原文: https://lindexi.gitee.io/post/win10-uwp-%E8%8E%B7%E5%8F%96%E7%AA%97%E5%8F%A3%E7%9A%84%E5%9D%90%E6%A0%87%E5%92%8C%E5%AE%BD%E5%BA%A6%E9%AB%98%E5%BA%A6.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。
林德熙
2019/03/13
4K0
js网页如何获取手机屏幕宽度
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/112719.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/08
11.4K0
iframe自适应高度和宽度[通俗易懂]
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/04
4K0
跨浏览器获取不同环境的window窗口宽度和高度
IE9+、Firefox、Safari、Opera和Chrome均为此提供了4个属性: innerWidth 、 innerHeight 、 outerWidth 和 outerHeight 。
德顺
2019/11/13
2.9K0
js获取网页屏幕可视区域高度
document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.documentElement.clientWidth ==> 可见区域宽度 document.documentElement.clientHeight ==> 可见区域高度
kirin
2020/12/23
9.8K0
js获取网页屏幕可视区域高度
js 获取浏览器高度和宽度值(多浏览器)
IE中: document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.documentElement.clientWidth ==> 可见区域宽度 document.documentElement.clientHeight ==> 可见区域高度 FireFox中: document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.documentElement.clientWidth ==> 可见区域宽度 document.documentElement.clientHeight ==> 可见区域高度 Opera中: document.body.clientWidth ==> 可见区域宽度 document.body.clientHeight ==> 可见区域高度 document.documentElement.clientWidth ==> 页面对象宽度(即BODY对象宽度加上Margin宽) document.documentElement.clientHeight ==> 页面对象高度(即BODY对象高度加上Margin高) 没有定义W3C的标准,则 IE为: document.documentElement.clientWidth ==> 0 document.documentElement.clientHeight ==> 0 FireFox为: document.documentElement.clientWidth ==> 页面对象宽度(即BODY对象宽度加上Margin宽) document.documentElement.clientHeight ==> 页面对象高度(即BODY对象高度加上Margin高) Opera为: document.documentElement.clientWidth ==> 页面对象宽度(即BODY对象宽度加上Margin宽) document.documentElement.clientHeight ==> 页面对象高度(即BODY对象高度加上Margin高)
似水的流年
2019/12/10
5.8K0
ie8和chrome获取上传图片的宽度和高度等尺寸
测试后可用 <html> <head>     <title>测试</title>     <meta charset="utf-8"/>     <link rel="styleshee
汤高
2018/03/28
1.8K0
js 获取浏览器高度和宽度值(多浏览器)
IE中: document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.documentElement.clientWidth ==> 可见区域宽度 document.documentElement.clientHeight ==> 可见区域高度 FireFox中: document.body.clientWidth ==> BODY对象宽度 document
似水的流年
2018/01/18
10.7K0
js 获取浏览器高度和宽度值(多浏览器)
点击加载更多

相似问题

如何检索HTML元素的实际宽度和高度?

2450

图片为什么高度和宽度不能自适应?

025

高度和宽度不适用于span吗?

2236

CSS中高度与宽度相同吗?

2281

如何使用javascript计算屏幕宽度?

166
相关问答用户
擅长3个领域
平安资管 | 架构师擅长4个领域
高级数据分析师擅长5个领域
擅长4个领域
腾讯云TDP | 高级后端开发工程师擅长3个领域
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档