博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS开发中的position+anchorPoint与frame应用解释
阅读量:5886 次
发布时间:2019-06-19

本文共 796 字,大约阅读时间需要 2 分钟。

我刚开始时非常困惑这两个地方, 所以现在好好解释一下他们的联系.
 
1/
position与anchorPoint是一对属性, 经常一起设置来确定控件的位置
frame单独设置
 
2/
position以父控件的左上角为(0, 0), 取值无限制. anchorPoint以自己的左上角为(0, 0), 取值0-1之间.
frame以父控件的左上角为零点, 取值无限制 .
 
3/
position与anchorPoint必定重合, anchorPoint默认值为(0.5, 0.5), position不确定
 
4/
当我们确定了frame的位置之后, 比如说frame = (100,100,200,200). 那随之position与anchorPoint也就确定了, 是多少呢?
anchorPoint默认是(0.5, 0.5) ,因为它俩必须要重合, 所以position点要为(200, 200)才可以.
看到了吧, 确定了anchorPoint, 又有frame , position就可以确定下来了.
 
5/
确定了frame之后, 又修改它俩, 控件会重新移动, 也就是说, 并不是说frame写好了之后, 控件就完全确定下来了.
 
6/
一般来说, position与anchorPoint, 修改其中一个, 控件都会随着跑
修改position, (100, 100) --> (200, 200), 这就相当于改了坐标系的(x, y), 但是anchorPoint的值不会变
修改anchorPoint, (0.5, 0.5) --> (1, 1), 这就相对于原位置, 向左上方分别移动了50%, 但是position的值不会变
看, 修改其中一方, 控件的位置是肯定要变得
 
 

转载于:https://www.cnblogs.com/AirStark/p/7784995.html

你可能感兴趣的文章
spring aop 配置
查看>>
nginx正向代理
查看>>
cloudstack4.2.1无法删除网络的故障解决办法
查看>>
PHP - 日期时间的转换
查看>>
用 Prettier 美化代码
查看>>
dynamips的前端dynagen解决CPU占用问题咯~
查看>>
解决执行脚本时爆“sqlplus: command not found”的问题
查看>>
使用SQLIO评估数据库磁盘性能
查看>>
在域中配置多元密码策略
查看>>
渗透测试技巧更新4
查看>>
Mysql存储过程中使用cursor
查看>>
IE8 中 session 管理的变化
查看>>
学习Unix怎么安装机器?《精通Unix下C语言与项目实践》读书笔记(14)
查看>>
《从零开始学Swift》学习笔记(Day 21)——函数返回值
查看>>
AD的备份与标准还原:深入浅出Active Directory系列(四)
查看>>
编译可在Android上运行的可执行文件:C/C++交叉编译环境
查看>>
To ADO.NET Entity Framework
查看>>
运用Ntop监控网络流量(视频Demo)
查看>>
SCOM 2007 R2监控系统安装部署(四)使用SCOM 2007 R2监控AD域控制器
查看>>
linux下将数字补齐为固定宽度的方式
查看>>