12、表格视图使用与布局调整实战指南

表格视图使用与布局调整实战指南

1. 运行时窗口调整问题

当运行程序并调整窗口大小时,可能会遇到布局混乱的问题。比如拉伸窗口垂直方向并缩小水平方向时,界面元素可能出现变形。例如外观框可能向下扩展,注释框和基本信息框可能水平缩小,基本信息框甚至可能变得杂乱。

我们期望的窗口布局调整效果是:原有的所有 UI 元素(NSBox 中的项目)保持大小不变,并固定在窗口右侧;两个新按钮保持大小不变、间距不变,并固定在表格视图下方的窗口左侧;新的表格视图在窗口扩展时能在垂直和水平方向同时扩展,贴紧窗口左侧,且在两个方向上都不小于当前大小;表格视图右侧的框与表格视图保持固定距离。

2. Cocoa 自动布局与约束机制

从 Mac OS X Lion 开始,Cocoa 使用自动布局系统来处理窗口调整。自动布局通过优先级约束来指定调整行为,这些约束可以声明视图的最小或最大尺寸、子视图之间的关系以及视图与其父视图的关系等。当用户调整窗口大小时,约束满足引擎会根据优先级动态确定最佳布局。

约束可以表达“等于”“小于”“大于”等关系,涉及一对视图或一个视图和一个常量。例如:
- “myButton’s width = 87” 可使按钮宽度固定为 87 点。
- “myButton’s height >= 32” 表示按钮高度不能小于 32 点,系统通常会选择满足条件的最小尺寸。

更复杂的约束如:
- “the horizontal space between myButton’s leading edge and the window’s leading edge = 10”
- “the hor

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值