Swift教程:如何在Interface Builder中使用AutoLayout在水平方向上配置NSScrollView(MacOS X,Swift 4.2)
本文最初发布在 http://popcornomnom.com/
你好! 不久前,我已经开始为MacOS编写应用程序(我具有IOS开发背景),并且遇到了这样一个问题,即我的问题大部分答案是:
- 已过时(超过3年前的答案,因此某些功能已被弃用)
- (关于目标C的一些答案让我的“笨拙”的眼睛有点痛苦),
- 答案适用于iOS,而不适用于OS X
有时找到所需答案的难度比应该的要难。
因此,我决定开始编写循序渐进的快速教程(格式为问题解答的简单教程)。
问题
内容不适合应用程序窗口,并被视图控制器剪切。
解
要解决此问题,您需要向视图中添加约束以达到内容的动态宽度和高度。
好的,让我们开始吧!
步骤1-3。
(步骤1-在下面的图像上)首先将NSScrollView拖动到ViewController。 然后在“属性检查器”的左侧面板中,选择(2)“边框类型” —无,然后选择(3)取消选中“绘制背景”。
步骤4。
之后,添加与超级视图相关的顶部/底部/前导/尾随约束。 我将最高约束设置为20,因为我的NSWindow“完整内容视图” = true。
第五步
然后添加您的内容视图(在我的情况下,这是2个由NSStackView包装的标签)。
第六步
接下来,我们向您的contentView添加顶部,顶部,尾部约束,并向底部添加两个底部约束。 我将所有常量设置为24。
步骤7–8。
然后(7)将第一个底部偏移关系更改为小于或等于(≤) ,并将优先级设置为490 ,(8)将第二个底部偏移关系设置为 – 大于或等于(≥) , 优先级为510 。
步骤9。
(9)除此之外,我还添加了一个最小的contentView宽度500( 宽度常数 = 500 , 关系大于或等于 )。
步骤10-11。
对于scrollView的documentView,添加顶部,顶部,两个尾部和两个底部约束。 (10)将第一尾随偏移关系设置为小于或等于 ,并将优先级设置为510 ,对于第二关系 – 大于或等于 ,将优先级设置为490 。 (11)对底部约束执行相同的操作。
步骤12
最后,应将NSClipView的isFliped属性更改为true。
而已。
希望本文对您有所帮助。
源代码:
popcornomnom / ScrollView-教程
分步指南:使用Interface Builder中的AutoLayout在水平方向上使用NSScrollView…
github.com
查看我的其他文章:
●如何为iOS和MacOS创建自己的xCode文件模板
●处理iOS中的Internet连接可达性(Swift 5)
●iOS本地化建议(快速5)
如果您喜欢阅读,可以检查我的应用程序 。
如果您有任何疑问或发现任何错误,请告诉我。
与丽塔(Rita)❤️撰写