前言
本博文主要是对ios中当xib对控件约束后,用代码进行约束的修改实现的一个介绍,以及记录,方便后续使用时候可以直接加载,这边ios开发主要使用语言Objective-C。
xib介绍
在iOS开发中,xib是一种可视化界面设计工具。xib文件是使用Interface Builder创建的,它可以用来定义一个视图的外观和布局。
xib文件是一个XML文件,其中包含了界面的各种元素,例如按钮、标签、文本框等。开发者可以在xib文件中使用拖拽和放置的方式来排列和配置这些元素,设置它们的属性和约束。
xib文件可以与代码文件(通常是一个ViewController类)关联起来。在代码中,开发者可以通过加载xib文件来获取其对应的界面对象,并且可以通过代码来操作和处理界面中的元素。
使用xib的优点是可以通过可视化界面来设计和调整界面布局,而不需要手动编写大量的代码。这样使得开发者更加容易理解和维护界面布局。同时,xib还支持约束来自动处理不同屏幕尺寸和方向的适配。
总之,xib是iOS开发中的一种可视化界面设计工具,可以用来创建和配置界面元素,并与代码文件关联起来,从而实现界面的展示和交互。
实现
将约束进行strong引用,对constant进行修改,注意如果weak的话会进行提前release
self.top.constant+= 100 ;
self.height.constant+= 100 ;
参考资料:
ios xib和代码的frame布局 iOSXib布局后代码修改约束的值
额外补充
当xib对控件约束后,用代码进行约束的修改实现部分的记录就先到这!接下来,是一些整理的c++要点概要!
内敛函数
使用内联函数的时候要注意:
- 递归函数不能定义为内联函数。
- 内联函数一般适合于不存在 while 和 switch 等复杂的结构且只有 1~5 条语句的小函数上,否则编译系统将该函数视为普通函数。
- 内联函数只能先定义后使用, 否则编译系统也会把它认为是普通函数。
- 对内联函数不能进行异常的接口声明。
大小端
大端和小端存储指的是对于多字节数据的表示方式。
- 在大端存储中, 如 ARM 平台, 数据的高字节保存在内存的低地址中, 而数据的低字节保存在内存的高地址中(低位高地址, 高位低地址 );
- 而在小端存储中, 如 X86、 x86-64 平台、 80X86, 数据的低位保存在内存的低地址中, 而数据的高位保存在内存的高地址中(低位低地址, 高位高地址) 。
例如,对于十六进制数 0x1234 , 高位 0x12 , 低位 0x34(内存地址: 高->低) , 数组中, 大端存储的表示方式是 0x12 0x34, 而小端存储的表示方式是 0x34 0x12。 结构体中, 先声明的是低地址, 后声明的是高地址, 如果先声明 m, 则大端存储, m 是 0x12。
nm命令
nm 命令查看汇编代码, 由 GNU C++汇编生成的改编后的函数名规则如下:
- 每个改编后的函数名(除了 main 函数) 以 2 个下划线( __) 开始, 后跟字母 Z、一个数值和函数名在跟着形参列表的编码(没有形参就不用了)。字母 Z 后的数值表示函数名称中字符的个数。
例如,函数 int donothing(char a, int b, float &c, double &d)在它的函数名中有 9 个字符, 所以改编后名字的前缀是__Z9。 然后, 接着跟着函数名, 后跟有它的形参列表的编码。 在函数 donothing的形参列表中 char 表示为 c, int 表示为 i, float &表示为 Rf, double &表示为 Rd。 所以最
终汇编形成的函数名为: __Z9donothingciRfRd