屏幕适配

作者: iOS_Alex | 来源:发表于2016-08-07 22:54 被阅读602次

适配技巧?

适配的思维就是AutoLayout的思维,告诉各个控件的区域相对位置,最初都是根据设备的屏幕大小作比较。自适应和描述性布局允许将宽度或高度(frame)设置为固定值,可以给视图设置一个最小或是最大值,但是不能将视图的起始位置(Origner)或是中心位置设置为固定值,换句话说,你的大小可以给你固定,但是你的位置不能给你固定。当对View使用Auto Layout适配的时候,原先对这个View做的frame或者大小都会立即无效,最大的那个View就是父视图的上下左右的边距都相当于可以跟屏幕的左上角(0,0)坐标发生联系。

AutoLayout布局,当然首选Xib来实现,通过一系列约束使得一个View在任何一个大小的屏幕上都能够产生好效果。这个很多人以为Xib并不好用,或许认为用代码更加高档,其实这都是错觉,要知道苹果的可视化编程Nib是苹果的Xcode的开发工程师耶!当年就是因为这个法国人开发了可视化编程方式才被高傲的乔布斯三顾茅庐苦苦留在了苹果公司.而且你们难道不觉得在调节View视图的一些大小和位置时,Xib有无可取代的功能么?就是你都不用编译后在模拟器上跑就能够轻轻松松获得改变参数后的效果!多么便利有趣!另外如果代码适配,大家通常会发现如果约束不到位,很容易出现所有View视图都出不来的情况。所以小技巧就是不要一次性创造完所有的UI,然后再去适配,最好的方法是创造一个View视图,就及时将这个视图能够固定的方向进行固定,而且多用比例来进行适配,同时代码适配时尽量以Iphone6!而且适配时以一行行为准,更关键的是必须提前考虑好那些变化,哪些不发生变化。这样在CEll拉伸时才可以做出取舍!

Masonray特殊情况处理?

1、如果子视图的边界总是跟父视图的边界的满足一定的间距关系,直接使用edges、insets、UIEdgeInsetsMake

2、如果子视图的宽度和高度总是跟父视图的宽度和高度满足一定的加减关系,直接调用size、offset、CGSizeMake

3、如果子视图总是跟父视图的中心存在关系,使用center、offset、CGpointMake

4、还可已使用链式语言,就是一直不停写,通常一个make只能设置一个约束,但是不一定,也可以使用一个make,设置完所有的约束,包括左、右、上、下、宽、高同时等于父视图。

在不删除旧约束的情况下更新和重新构建约束?

- (NSArray *)mas_updateConstraints:(void(^)(MASConstraintMaker *make))block

- (NSArray *)mas_remakeConstraints:(void(^)(MASConstraintMaker *make))block

相关文章

  • 屏幕适配总结

    屏幕适配总结 为什么要针对屏幕做适配 drawable目录常见问题 : 屏幕适配方案:

  • Android屏幕适配-应用篇

    目录 Android屏幕适配-基础篇Android屏幕适配-应用篇 Android屏幕适配最主要的原因:  是由于...

  • 屏幕适配的那些坑

    屏幕适配的那些坑 屏幕适配的那些坑

  • LayaAir屏幕适配

    LayaAir屏幕适配 官方教程链接:LayaAir实战开发11-屏幕适配 屏幕适配 随着移动端设备(手机、平板、...

  • she

    1.适配的分类 系统适配 屏幕适配 1.1屏幕适配历史 1.1.1autoresizing 去掉auto layo...

  • Android屏幕适配

    一. 为什么要适配屏幕 android屏幕大小、屏幕密度碎片化严重 二. 怎么样适配屏幕 图片适配 应用图标提供不...

  • 屏幕适配AutoResizing

    适配器简介 AutoResizing 屏幕适配的历史 -iPhonestyGS\IPhone4 -没有屏幕适配可言...

  • css media 适配屏幕宽度

    H5 屏幕适配 css media 适配屏幕宽度;js 通过 适配获取屏幕宽度,来执行对应方法; max-widt...

  • 关于iOS适配的一点事

    屏幕适配及文字适配

  • Android屏幕适配(4)常见:第三种

    前言:Android屏幕适配(1)基础知识篇Android屏幕适配(2)常见:第一种Android屏幕适配(3)常...

网友评论

    本文标题:屏幕适配

    本文链接:https://www.haomeiwen.com/subject/lhglsttx.html