【Autolayout案例02-距离四周边距 Objective-C语言】

一、好,来看第二个案例

通知

1.第二个案例,是什么意思呢,第二个案例,要求屏幕中间,有一个UIView

UIView,是个红色的UIView

UIView的大小,我不限定

但是无论你是什么屏幕下

这个UIView距离上边,始终是50

距离右边,始终是50,

距离下边,始终是50,

距离左边,始终是50,

通知

这个UIView,距离四周,始终是50啊,

直接设那个边界,是不是就OK了

新建一个项目,Name:005自动布局案例2-距离四周边距相等

通知

打开新建项目的storyboard,直接选中它

通知

可以把电脑的分辨率调大点儿,不然看不全吧

通知

中间放一个UIView进来

通知

这个UIView进来之后呢,给它来一个背景色

通知

给它来个红色背景色

给完红色背景色以后,

通知

给完红色背景色以后,换成其他颜色背景色,这个红色太刺眼了

通知

我要让它距离四周的距离,都是50啊

选中这个空间,我们可以把左边那个打开

通知

选中那个控件,然后打开下面这里,

通知

让它距离上边、左边、下边、右边

通知

距离给它一个固定的值

1)距离上边是多少,50

2)距离左边是i多少:50

3)距离右边是多少: 50

4)距离下边是多少:50,

通知

接下来,我这儿是不是都改成50了

上、下、左、右都勾上,表示距离上、下、左、右距离是固定的,都给它填50,表示都是50

然后,这时候,点一下,Add 4 Constraints,

把四个约束增加上

通知

增加上以后,这里看一下

还有红色箭头儿吗,没有了吧,为什么没有红色啊

难道这时候,X 、 Y 、 高 、 宽 、 都确定了吗

你距离左边的值固定了:是不是X确定了

你距离右边的值固定了:是不是宽度就确定了吧

距离左边,X到这儿,距离右边,宽度到这儿,是不是中间自动拉伸,是不是宽度就固定了

就是说,X 固定了,宽度 固定了

距离上边的值固定了:是不是Y值固定了

距离下边的值固定了:是不是高度固定了

所以说,距离上、下、左、右,四个值设置好以后,这个元素的X、Y、高、宽,是不是就全都固定了

然后这个时候看着是不是很不爽,

通知

问题解决一下,让它对齐

Fix

通知

我如果不解决,你想运行的话,也行

command + R

通知

上、下、左、右、是不是都是这个距离

所以说,你这儿不需要解决,但是一般人,都会解决一下,看着是不是很不爽

通知

现在看起来,距离上、下、左、右、是不是都有一段距离了

但是,事实上,现在距离上、下、左、右、这个距离,其实好像不是50,

通知

是不是上边那边距离要高点儿,

打开那个预览程序

通知

添加预览

通知
通知
通知

这样的话,我们是不是可以实现,在不同屏幕下,都可以实现,距离上、下、左、右、都有一个距离了吧

都可以实现,距离上、下、左、右、都有一个距离了吧

我现在希望把刚才那些约束都删掉,怎么办呢

选中你这个View

通知

点下边的第三个按钮,注意,上面有一个Selected Views

通知

当前选中的约束

删除所有的约束:Clear Constraints

通知

下面那个,All Views

是所有当前控制器中所有的控件,删除它们的约束

通知

刚才我们为这个控件,是不是设置了四个约束啊

你想删除这个控件的四个约束,得选中这个控件,一点上面这个Clear Constraints

通知

就把当前这个View的那几个约束,给删掉了

如果说当前控制器里面有很多个控件,你想把所有的控件的约束,都删掉,

那么这时候,点哪儿

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/30532.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Nginx跳转模块——location与rewrite

一、location 1、location作用 用于匹配uri(文件、图片、视频) uri:统一资源标识符。是一种字符串标识,用于标识抽象的或物理资源文件、图片、视频 2、locatin分类 1、精准匹配:location / {...} 2、一般匹配&a…

PROFINET转DeviceNet网关普通网线能代替profinet吗

捷米JM-DNT-PN这款神器,连接PROFINET和DeviceNet网络,让两边数据轻松传输。 这个网关不仅从ETHERNET/IP和DEVICENET一侧读写数据,还可以将缓冲区数据交换,这样就可以在两个网络之间愉快地传递数据了!而且,…

虚幻引擎游戏开发过程中,游戏鼠标如何双击判定?

UE虚幻引擎对于游戏开发者来说都不陌生,市面上有47%主机游戏使用虚幻引擎开发游戏。作为是一款游戏的核心动力,它的功能十分完善,囊括了场景制作、灯光渲染、动作镜头、粒子特效、材质蓝图等。本文介绍了虚幻引擎游戏开发过程中游戏鼠标双击判…

springboot+mybatis实现简单的增、删、查、改

这篇文章主要针对java初学者,详细介绍怎么创建一个基本的springboot项目来对数据库进行crud操作。 目录 第一步:准备数据库 第二步:创建springboot项目 方法1:通过spring官网的spring initilizer创建springboot项目 方法2&am…

SQL SERVER ip地址改别名

SQL server在使用链接服务器时必须使用别名,使用ip地址就会把192.188.0.2这种点也解析出来 解决方案: 1、物理机ip 192.168.0.66 虚拟机ip 192.168.0.115 2、在虚拟机上找到 C:\Windows\System32\drivers\etc 下的 (我选中的文件&a…

C#与C/C++交互(1)——需要了解的基础知识

【前言】 C#中用于实现调用C/C的方案是P/Invoke(Platform Invoke),让托管代码可以调用库中的函数。类似的功能,JAVA中叫JNI,Python中叫Ctypes。 常见的代码用法如下: [DllImport("Test.dll", E…

修改IDEA的idea.vmoptions参数导致IDEA无法打开(ReservedCodeCacheSize)

事发原因 Maven导依赖的时候OOM,因此怀疑是内存太小,尝试修改idea.vmoptions的参数,然后发现IDEA重启后打不开了,卸载重装后也无法打开。。。 实际上如果导包爆出OOM的话应该调整下图参数,不过这都是后话了 解决思路…

【从零开始学习JAVA | 第四十四篇】TCP协议中的握手与挥手

前言: TCP(传输控制协议)作为计算机网络中的重要协议,扮演着确保数据可靠传输的角色。在TCP的通信过程中,握手与挥手问题是不可忽视的关键环节。握手是指在建立连接时,客户端与服务器相互确认彼此的身份并…

【学习FreeRTOS】第1章——FreeRTOS入门

1.裸机与RTOS介绍 1.1.裸机与RTOS引入(举例) 设定情景:小明同学一边打游戏一边恢复女友消息,中途突然肚子疼要上医院 裸机的抽象表达 当紧急情况时,如果当前正在打游戏,那么小明只能打游戏和回复信息的流…

Spring 事务管理

目录 1. 事务管理 1.1. Spring框架的事务支持模型的优势 1.1.1. 全局事务 1.1.2. 本地事务 1.1.3. Spring框架的一致化编程模型 1.2. 了解Spring框架的事务抽象(Transaction Abstraction) 1.2.1. Hibernate 事务设置 1.3. 用事务同步资源 1.3.1…

PHP最简单自定义自己的框架创建目录结构(二)

1、mvc目录结构 2、目录解释 KJ&#xff1a;项目名称 core&#xff1a;框架核心目录 KJ.php 框架运行入口 index: 框架模块 controller:模块控制器 model:模块模型数据库操作 view:页面显示html index.php:index模块框架入口 3、index.php框架入口文件引入框架 <?php r…

虚拟世界探索:科技之下的未来可能性

随着科技的飞速发展&#xff0c;人们对于虚拟世界的憧憬和探索也日益加深。虚拟世界&#xff0c;那是一个超越现实的概念&#xff0c;一个充满想象力和创造力的领域。然而&#xff0c;虚拟世界究竟有可能实现吗&#xff1f;这是一个引人深思的问题。 虚拟世界&#xff0c;首先让…

Vue.js2+Cesium1.103.0 六、标绘与测量

Vue.js2Cesium1.103.0 六、标绘与测量 点&#xff0c;线&#xff0c;面的绘制&#xff0c;可实时编辑图形&#xff0c;点击折线或多边形边的中心点&#xff0c;可进行添加线段移动顶点位置等操作&#xff0c;并同时计算出点的经纬度&#xff0c;折线的距离和多边形的面积。 De…

mysql死锁分析show engine innodb status

文章目录 1、show engine innodb status命令2、前置知识3、无符号数、有符号数4、innodb关于有符号数的规定5、为什么会有这个规定 1、show engine innodb status命令 最近在使用mysql的show engine innodb status命令分析死锁&#xff0c;发现了一个有意思的点。就是红框里圈…

Docker 方式 部署 vue 项目 (docker + vue + nginx)

1.安装好 nginx 。 2. 把 vue 项目的源码克隆到确定目录下。用 git 管理&#xff0c;所以直接 git clone 到既定目录就行了。 如我的目录是&#xff1a;/root/jiangyu/projects/gentle_vue/gentle_vue_code 。 3. 项目打包&#xff1a; npm run build 复制 会自动生成 dist…

详解推送Git分支时发生的 cannot lock ref 错误

在码云上建了一个项目仓库,分支模型使用 git-flow ,并在本地新建了一个功能分支 feature/feature-poll。后来在推送时发生错误,提示 cannot lock ref ...... 这样的错误信息。下面复盘一下具体过程和解决办法,以供参考。 在码云中建立仓库时,考虑到想按照 GitFlow 的模式…

两个状态的马尔可夫链

手动推导如下公式。 证明&#xff1a; 首先将如下矩阵对角化&#xff1a; { 1 − a a b 1 − b } \begin {Bmatrix} 1-a & a \\ b & 1-b \end {Bmatrix} {1−ab​a1−b​} (1)求如下矩阵的特征值&#xff1a; { 1 − a a b 1 − b } { x 1 x 2 } λ { x 1 x 2 }…

【心电图信号压缩】ECG信号压缩与通过三次样条近似重建的ECG信号压缩研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

Stable Diffusion - 幻想 (Fantasy) 风格与糖果世界 (Candy Land) 的人物图像提示词配置

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/132212193 图像由 DreamShaper8 模型生成&#xff0c;融合糖果世界。 幻想 (Fantasy) 风格图像是一种以想象力为主导的艺术形式&#xff0c;创造了…