在做 iPhone5 兼容开发的时候,被一个获取屏幕分辨率的问题郁闷了好久。使用[[UIScreen mainScreen] bounds]获取到的分辨率总是320*480,因为没有 iPhone5 真机,一度还以为是新模拟器引起的问题。后来在网上搜索资料半天,终于找到一个解决的办法,不敢独享,跟大家分享一下。

iPhone5 [[UIScreen mainScreen] bounds]获取正确分辨率的解决办法:

-------------------------------------------------------------------

添加一张新的闪屏图片"Default-568h@2x.png"到工程中,重新运行程序,[[UIScreen mainScreen] bounds]获取到的分辨率就能正确返回320*568了,就这么简单....

这个可能不是最好的解决办法,但加入"Default-568h@2x.png"闪屏图片确实让iPhone5或者新模拟器认为当前运行的应用是兼容iPhone5的,所以[[UIScreen mainScreen] bounds]函数正确返回了320*568的分辨率。如果工程没有"Default-568h@2x.png"闪屏图片,即使在iPhone5或者新模拟器上运行,[[UIScreen mainScreen] bounds]函数返回的仍是320*480的分辨率,黑边怎么也消除不了。

问题解决了,剩下的就是体力活了,以前我们可能写死了界面的大小,比如:
CGRectMake(0,0,320,480),

现在可能就要改成以下的编码方式了:
CGRectMake(0, 0, [[UIScreen mainScreen] bounds].size.width, [[UIScreen mainScreen] bounds].size.height)

转载 兼容iphone5开发获取屏幕分辨率的问题相关推荐

  1. IOS获取屏幕分辨率

    获取屏幕分辨率是个很有用的功能,尤其在一些游戏相关的开发中,图形的绘制与屏幕分辨率密不可分.得到当前屏幕的分辨率是必不可少的支持. 获取屏幕分辨率可以两步走 1.得到当前屏幕的尺寸: CGRect r ...

  2. C#获取屏幕分辨率(大小)

    using System.Windows.Forms;             获取屏幕分辨率            int SH = Screen.PrimaryScreen.Bounds.Heig ...

  3. Android的单位px,pt,dp,sp总结和获取屏幕分辨率

    px: pixels(像素). 是屏幕中可以显示的最小单位元素,px是设备密度有关的,不同设备显示效果不同.因为由于不同的设备密度不同,密度就是单位英寸的像素不同,在不同的手机上显示的大小就不同 pt ...

  4. Qt界面制作(QSS、获取屏幕分辨率、自定义控件、版权)

    源码下载地址: https://download.csdn.net/download/qq78442761/10534055 程序运行截图: 程序版权 程序结构图如下: 主要就几点: 1.QSS 2. ...

  5. Android手机获取屏幕分辨率高度因虚拟导航栏带来的问题

    大家都知道,Android系统在4.4(KITKAT)版本后,增加了更炫的交互,并且对于标题栏和状态栏也增加了可定制化,于此同时在获取手机分辨率的时候一些旧方法已经不那么好使了. 常用获取屏幕分辨率的 ...

  6. MATLAB获取屏幕分辨率

    1. 获取分辨率 本来设计程序按照1920x1080运行的,后面调了一下系统缩放,分辨率就变了,所以为了更灵活的使用,还是先获取再使用吧 matlab获取屏幕分辨率命令: get(0,'ScreenS ...

  7. Android kotlin工具类获取屏幕分辨率及宽高

    前言 获取屏幕相关工具DisplayUtil class DisplayUtil {companion object {/*** 获取屏幕宽度*/fun getScreenWidth(context: ...

  8. 使用GTK+获取屏幕分辨率并设置满屏显示效果

    在linux下,经常需要设置程序全屏显示,GTK+中提供了获取屏幕分辨率的方式,然后只要根据得到的宽高设置窗口显示大小,同时使用gtk_window_set_decorated去掉边框和标题栏显示,就 ...

  9. iphone中获取屏幕分辨率的方法

    iphone中获取屏幕分辨率的方法 CGRect rect = [[UIScreen mainScreen] bounds]; CGSize size = rect.size; CGFloat wid ...

  10. c++获取屏幕分辨率DPI以及屏幕放缩倍数

    c++获取屏幕分辨率DPI以及屏幕放缩倍数 参考示例 // 获取分辨率不准nScreenWidth = GetSystemMetrics(SM_CXSCREEN);nScreenHeight = Ge ...

最新文章

  1. GitHub怎样fork别人代码到自己仓库并进行贡献
  2. JAVA拳皇_拳皇(Java简单的小程序)代码实例|chu
  3. CAN总线技术 | 物理层03 - 采样点
  4. 小哥哥你有98K吗?利用Python制作一款多功能变声器!
  5. U盘安装CentOS 7错误 /dev/root does not exist, could not
  6. 22.创建DockWidget
  7. python的copy模块是哪个模块_每周一个 Python 模块 | copy
  8. 框架应该弄明白的理论问题
  9. woocommerce修改商品详情页
  10. 用计算机做初中模拟物理实验,仿真物理实验室初中完整版
  11. STM8单片机的中断优先级
  12. Footprint:Polkadot创立至今,生态如何?
  13. 给学弟建议的个人前端规划
  14. SaaS企业如何构建与自身增长目标相匹配的市场力?
  15. 美团外卖订单小票打印规范
  16. Java微信支付API文档测试
  17. 【微客云】机器人怎么赚钱运营及功能介绍
  18. 猫眼电影爬取(woff 字体文件解析)
  19. 基于单片机的温湿度串口监控系统设计(#0429)
  20. hackinglab-脚本关5——逗比验证码第一期

热门文章

  1. 树莓派WiFi设置固定IP地址
  2. GIS等级考试知识集锦
  3. 利用雪碧图及css自制的动态变色导航栏
  4. CSS雪碧图Sprite
  5. AWS VPC(二)-----创建VPC Peering
  6. RationalDMIS 2020 CAD模型坐标系转换(山涧果子)2021
  7. passing 'const xxx ' as 'this' argument discards qualifiers [-fpermissive]
  8. TortoiseGit的Reversion Graph图标颜色代表意义
  9. 模型结构可视化神器——Netron(支持tf, caffe, keras,mxnet等多种框架)
  10. 武汉知名 IT 公司大盘点