zoukankan      html  css  js  c++  java
  • ios使用自动布局autolayout

    在ios开发中经常用到自动布局,比如屏幕旋转来,界面就要从新摆放,不然就会显示不全。

    自动布局一定要在storyboard界面里面设置,不能用纯代码的形式来写

    要使用自动布局,首先要确保interface builder document里面的Use Auto Layout 和Use Size Classes 选项已经勾选☑️上了

    图1:打开auto layout

    这样在storyboard的右下角就会出现几个图形按钮:   分别是:stack、align、pin、和resolve auto layout issue 。

    现在我们就可以开始设置自动布局的各种约束了

    方法一:借助蓝色线来辅助:

    在这里例子里,我把Thing0放在左上角,这时会出现两根蓝色线,然后点击reslove auto layout issue里面的Reset to Suggested Constraints 用建议的约束来重置,重置完后点击Thing0就能看到约束的线,在右边的size inspector可以看到各种约束

     图2:设置Thing0靠近蓝色辅助线

    图3:设置系统建议的约束

     

    图4:在尺寸面板可以查看所有约束条件和设置约束值

    点击Edit可以编辑约束条件的值,我们一般选择standard标准值,因为我们不想看到魔数,用魔数是个不好的习惯。

     

    图5:设置auto layout的约束条件时出现很多警告的解决方法

    在这里,我的Thing0由于被我拉伸过,所以在文件大纲出现了黄色的警告符⚠️,点击警告⚠️进入警告列表,里面有各种约束警告,在点击警告符⚠️,xcode就会弹出可以让你选择的解决方案,选择你要使用的解决方案,再Fix 按钮,修复。

    图6:运行程序

    运行程序,不管竖屏还是横屏,Thing0都摆在了我想要放的地方

    方法二:点击控件按Ctrl+鼠标移动方向来设置

    这种方法类似与设置输出口Outlet和点击事件Action:

    这里我把Thing1和Thing0靠近,我想让Thing1的自动布局依赖于Thing0,点击Thing1 按Ctrl拖动鼠标到Thing0上,松开后xcode就会弹框让你选择约束条件,可以这里可以选择Leading 、Center Horizontally、Trailling等,分别是前列、中心水平、后面对齐,添加完想要的约束条件后点击Thing1就能看到约束线

     

     图7:通过拖拽的方式设置约束条件

    图8:运行程序

    运行程序,竖屏横屏都能正确摆放;

    方法三:点击控件后直接添加约束

    在这个例子里,我把Thing0的约束清空了,没有任何的约束条件,也没有借助蓝色辅助线。

    点击Thing0后,再点击四个控件:中的Pin也就是第三个,就会弹出让你设置约束的各种条件,包括上下左右的间距约束等。

    设置好约束条件后,点击add 2 constraints 控件Thing0的约束就设置好了

    图9:通过点击控件来直接

    图 10:程序运行             

     程序运行,Thing0摆放正确

  • 相关阅读:
    计算机原理及硬件介绍
    python学习之由
    IDEA如何设置JVM参数
    Java函数式编程
    ubuntu更换源
    ubuntu 安装时没有设置root密码,如何登陆root
    ubuntu16.04镜像下载地址
    Elasticsearch Search APIs
    Elasticsearch Document APIs
    Elasticsearch搜索
  • 原文地址:https://www.cnblogs.com/panxiaochun/p/5042097.html
Copyright © 2011-2022 走看看