美文网首页iOS开发iOS学习笔记
苹果常用的布局方式

苹果常用的布局方式

作者: Calvin_Shen | 来源:发表于2016-12-21 11:26 被阅读57次

知识点:

1、需要重新布局时,常用的系统方法的调用顺序是怎样的?

答:当一个视图需要重新布局时,系统方法的调用顺序为:
(1) step1:控制器的viewWillLayoutSubViews方法
(2) step2:各个子视图的layoutSubViews方法
(3) step3:控制器的viewDidLayoutSubViews方法


2、AutoResizing和AutoLayout的区别?

答: AutoResizing布局是什么?
比较老的的自动布局技术,操作简单,API简单,功能也简单,有一定的局限性,很久以前叫(struts/spring(架构/弹簧)技术
核心理念:当界面大小发生变化是,对子视图进行同比例的变化
编写代码实现AutoResizing设置视图的autoresizingMask属性即可,代码设置时,规则的描述与在检查器中点亮红线的描述要相反,如,在检查器中点亮左,上为固定距离时,那么用代码描述就要说视图的右、下为长度可变
AutoLayout布局是什么?
苹果设计的新的布局技术,功能强大,操作复杂,从xcode5开始,慢慢好用,在xcode6中,有配合sizeClassed技术完成屏幕适配工作
工作原理
1)通过一系列的“约束constraint”来描述视图的展示位置
2)什么是约束?代表一个条件,只需要设定一些约束,则系统就会根据这一堆约束,自动计算出符合约束的frame;
3)如何创建约束
方式一:在故事板中可视化配置
方式二:用代码创建
4)约束的两个原则
1.描述清楚(如果不清楚,约束变成橙色)
2.互不冲突(如果冲突,回显示红色)


3、使用代码添加约束,添加在什么地方?以及相互冲突的约束如何解决?

答:这个是系统默认添加约束的方法,它是NSLayoutConstraint的类方法:

    @param view1      传入想要添加约束的控件
    @param attr1      传入想要添加约束的方向,这个枚举值有很多,可以自己看看
     @param relation   传入与约束值的关系,大于,等于还是小于
     @param view2      传入被参照对象
     @param attr2      传入被参照对象所被参照的方向,如顶部,左边,右边等等
    @param multiplier 传入想要的间距倍数关系
    @param c          传入最终的差值
    @return NSLayoutConstraint对象
+(instancetype)constraintWithItem:(id)view1attribute:(NSLayoutAttribute)attr1 relatedBy:(NSLayoutRelation)relationtoItem:(id)view2 attribute:(NSLayoutAttribute)attr2multiplier:(CGFloat)multiplier constant:(CGFloat)c

使用代码添加一个视图的约束要添加到这个视图的父视图中;如果有多个约束相互冲突,解决冲突的办法或者删除其他的约束,保留一个;或者可以通过设置约束的优先级,在约束相互冲突时,优先执行某个约束,忽略其他冲突的约束;

相关文章

  • 苹果常用的布局方式

    知识点: 1、需要重新布局时,常用的系统方法的调用顺序是怎样的? 答:当一个视图需要重新布局时,系统方法的调用顺序...

  • HTML表格、表单

    表格 table常用标签 table常用属性: 传统布局: 传统的布局方式就是使用table来做整体页面的布局,布...

  • Android中的五种布局方式

    常用五种布局方式, 分别是:FrameLayout(框架布局),LinearLayout (线性布局),Absol...

  • 【方案】圣杯布局&双飞翼布局

    背景 随着前端技术的发展推进,web端的布局方式已基本成熟,那么在网站布局方式中,三列布局最为常用,布局方式也有很...

  • 面试 | Android View、布局、动画、适配

    布局方式 1、Android 中常用的布局都有哪些? FrameLayout RelativeLayout Lin...

  • 2.2.1线性布局

    线性布局的概念 线性布局(LinearLayout)是Android开发中常用的一种布局方式,它是以垂直和水平方式...

  • iOS中的Auto Layout和Frame

    1 iOS常用的布局方式 iOS中界面有三种布局方式:Frame,Autoresizing Masks和Auto ...

  • Android 界面的基本属性

    Android 界面的常用基本属性 布局: 在 android 中我们常用的布局方式有这么几种: 1.Linear...

  • 02-小程序:Flex布局

    一、简介 1.1、flex 布局 (Flexible布局,弹性布局)是在小程序里面常用的布局方式官方文档:flex...

  • Android RecyclerView添加头尾布局

    RecyclerView添加头尾布局方式有多种,一般常用的方式是利用ItemViewType,将头尾布局当做指定类...

网友评论

    本文标题: 苹果常用的布局方式

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