gpt4 book ai didi

objective-c - 调整大小和布局 : How to implement this design?

转载 作者:行者123 更新时间:2023-12-03 17:38:48 25 4
gpt4 key购买 nike

好吧,这看起来很简单,但我已经苦苦挣扎太久了,所以我决定寻求一些帮助。

基本,我有一个容器 NSView。

内容为(从左到右):

  • 一个NSSegmentedControl
  • 一个 NSTextField
  • 一个NSSegmentedControl

它们都是水平对齐的(=它们在同一条“线”中)。

我想做的是:

  • 第一个元素的宽度固定,并固定在左侧
  • 可调整大小的文本字段
  • 最后一个元素的宽度固定,并固定在右侧

我想这是不言自明的。

<小时/>

这是我的 3 个 View 的自动调整大小设置:

查看 1

enter image description here

查看 2

View 2

查看3

enter image description here

<小时/>

问题是:整个大小调整工作正常。直到文本字段的大小调整到折叠的程度。当 super View /容器再次调整为正常大小时,整个设计就会变得困惑(文本字段溢出容器以及许多此类奇怪的问题)。

发生什么事了?有什么建议吗?

<小时/>

注意:我让它与自动布局一起使用(仅设置“自动布局”和“添加(ing)缺少约束”),但我绝对想避免它,因为性能影响巨大——整体设计相当复杂,有很多嵌套,所以让我们坚持使用老式的方式。 :-)

最佳答案

使用自动调整大小蒙版的旧 Spring 和支柱模型基于大小变化的比例分布,该变化基于正在调整大小的 subview 的当前大小。一旦任何 subview 的大小为零,它就会变得困惑。要么除以零,要么乘以零,你就会得到虚假的结果。这是系统长期存在的问题。

您必须设置最小窗口大小以防止这种情况发生。

自动布局解决了旧模型的这一问题和许多其他限制,以及它的所有缺陷。

关于objective-c - 调整大小和布局 : How to implement this design?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27457069/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com