zoukankan      html  css  js  c++  java
  • 每天一点Swift(五)控制器的生命周期和SizeClass

    字数358 阅读19 评论0 

    初始化init-->awakeFromNib--> prepare a segue --> SB去设置outlets --> viewDidLoad

    1. viewDidLoad

    在viewDidLoad中,outlets已经被设置;但是几何位置(bounds)并没有被设置

    viewDidLoad应该做什么:

    初始化你的view的最佳时机,或者说是根据你的model来更新UI;
    不要在这里做任何关于几何位置的事情。

    2.viewWillAppear

    viewWillAppear应该做什么:请求网络数据这种耗时的工作放在这里;也允许做与位置相关的操作。

    3. 布局

    viewWillLayoutSubviews --> autoLayout去自动布局 -->viewDidLayoutSubviews

    4.viewWillDisappear

    viewWillAppear应该做什么:做清理数据的工作。

     

    举个splitviewController例子:下面Psychologist是master控制器,happiness是detail控制器

    AutoLayout:

    利用preview查看当前storyboard:

    用Ctrl+拖线来设置SB中的AutoLayout时,可以按住shift来多选。

    调整压缩系数,表示当设备的名目尺寸发生变化时,哪些view可以优先被压缩。优先值越低,越会被压缩。

    hugging是,这个view到底想不想变小。

    imageView的自动布局,在SB中给它设置一张默认的图片,那么他就有默认的宽高。就只用设置位置约束了。

    topConstraint并没有设置Equal而是greater than。。。 所以图片可以自适应大小。

    SizeClass:

    1. 先在any any下实现统一布局

    2.选择特殊情况下的sizeClass

    3. 移除原来any any的约束,

  • 相关阅读:
    Pods
    CentOS 7中firewall防火墙详解和配置以及切换为iptables防火墙
    windows IIS安装php服务及配置
    Linux最常用命令
    kubernetes 基本概念和资源对象汇总
    mysql集群压测
    mysql碰到的问题总结
    python字符串常用内建函数总结
    kubeadm常见报错和解决方法
    ubuntu部署kubeadm1.13.1高可用
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/5294418.html
Copyright © 2011-2022 走看看