博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ios8新特性屏幕适配之sizeclass
阅读量:6149 次
发布时间:2019-06-21

本文共 885 字,大约阅读时间需要 2 分钟。

hot3.png

ios8推出也有一段时间了,由于时间比较紧,所以没去学习ios8的新特性, 随着iphone6,6+的推出,ios屏幕适配是一个大问题,如何成功适配各种尺寸以及ipad呢? 苹果公司为了解决这个问题给出了新技术sizeclass 下面是我对sizeclass学习的一些笔记,希望对大家有用:

1>屏幕适配的发展历程 代码计算frame -> autoreszing(父控件和子控件的关系ios6) -> autolayout(任何控件都可以产生关系ios7) -> sizeclass(ios8)

2> sizeclass的作用:ios8中为了解决屏幕适配,引入了一个全新的概念,sizeclass 而这个使用的时候不需要判断屏幕的尺寸,也没有横屏和竖屏的概念,只有(Compact、Any,Regular)的概念!在Xcode新建的项目中,看到的storyboard界面下面栏目中,有一个(wAny,hAny)点击之后会出现一个可选择的类似九宫格的表格,这个就是一个屏幕选择器,可以对不同屏幕进行选择! 在此输入图片描述

  • 仅仅是对屏幕进行了分类, 真正排布UI元素还得使用autolayout
  • 不再有横竖屏的概念, 只有屏幕尺寸的概念
  • 不再有具体尺寸的概念, 只有抽象尺寸的概念
  • 把宽度和高度各分为3种情况 而3*3的组合就是9中情况
  1. Compact : 紧凑(小)
  2. Any : 任意
  3. Regular : 宽松(大)
  4. 符号代表
  • : Compact
  • : Any
  • : Regular
  1. 继承性 (尽量少用*组合,这样很可能会导致冲突)
    • : 其它8种情况都会继承
    • : 会被- - \ + -继承
    • : 会被+ - \ + +继承
  1. sizeclass和autolayout的作用 sizeclass:仅仅是对屏幕进行了分类(判断屏幕) autolayout:对屏幕中各种元素进行约束(位置\尺寸) iPad尺寸图1ipad尺寸图2iphone尺寸图1iphone尺寸图2iPhone尺寸图3 之前,写项目是手写代码还是使用storyboard的争论,随着苹果公司的指引终于还是有了答案,使用sb吧!

转载于:https://my.oschina.net/panyong/blog/353823

你可能感兴趣的文章
使用ManageEngine NetFlow Analyzer监控netflow
查看>>
Struts2 漏洞彻底解决办法
查看>>
暖心的回复
查看>>
6月又过去一大半了。
查看>>
分布式文件系统MogileFS介绍
查看>>
使用Python实现Hadoop MapReduce程序
查看>>
python内置函数2-classmethod()
查看>>
python内置函数5-getattr()
查看>>
win2008重新生成SID
查看>>
通过PXE部署系统时报错 0xc000000f
查看>>
修改计算机MAC地址(win7)
查看>>
linux下如何挂接(mount)光盘镜像文件、移动硬盘、U盘、Windows网络共享和NFS网络共享...
查看>>
shell逻辑控制语句之case
查看>>
我的友情链接
查看>>
重装系统再也不用担心桌面文件丢失了
查看>>
家用NAS也可以配置iSCSI盘
查看>>
我的友情链接
查看>>
MySQL复制表结构和数据SQL语句
查看>>
网站安全那些事
查看>>
清理prometheus指定key的数据
查看>>