问题标签 [nsstackview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
248 浏览

cocoa - NSStackView edgeInsets 被忽略

Interface Builder 和运行应用程序时忽略使用edgeInsetson 。NSStackView

NSStackView edgeInsets 不起作用

0 投票
2 回答
43 浏览

macos - 这是什么疯狂的自动布局逻辑?

我创建了一个新的视图控制器。

我向它添加了一个垂直堆栈。间距 = 0,对齐方式 = 中心 X,均匀填充。我将它限制在其父视图的 4 个边缘,空间 = 0。\

我在主堆栈内添加了 3 个水平堆栈。

对于每个水平堆栈:对齐 = 中心 Y,均填充,间距 0。

我在这 3 个堆栈中的每个堆栈中添加了两个自定义视图。

我将这些堆栈之一的宽度限制为主堆栈的宽度。

结果很疯狂。

在此处输入图像描述

以天堂的名义,为什么不是这样的结果?

在此处输入图像描述

0 投票
1 回答
181 浏览

macos - 在 NSTableView 中嵌入 NSStackView 作为 NSTableCellView

我目前正在开发一个待办事项类型应用程序的原型。我有一个包含用户任务的表。我想做的只是向用户提供相关的任务信息。但要编辑其他信息,他们会点击披露按钮来展开单元格。

我在想两种可能的方法来处理这个问题:

  • 扩展 NSTableViewCell
  • 使用 NSStackView 作为每个单元格的内容

如果使用 NSTableViewCell,我可能会有两个 NSView 来表示单元格(顶部和底部)。

如果使用 NSStackView,我将有一种简单的方法来封装这些部件。

我想另一种方法也可以完全用 NSStackView 构建它。

更困难的方面似乎与细胞的实际膨胀/塌陷有关。

我知道这可以被视为征求意见的问题类型。我从未构建过 MacOS 应用程序。因此,我正在寻找一些关于解决问题的最佳方法的指导,而不是在注定不会有成效的方法上旋转我的车轮。

谢谢!

0 投票
1 回答
75 浏览

swift - 在 Swift 中动画一组 NSView 以在 NSStackView 中一个接一个出现的最佳方式是什么?

我可以使用以下代码向 NSStackView 添加多个 NSTextField:

optionsStackView.addView(newOption, in: .center)

我遇到的问题是让每个 NSTextField (newOption) 在视图出现时一个接一个地出现 - 在使用 NSAnimationContext.runAnimationGroup { (context) in } 时不是一次都出现

每次 for 循环运行时,我基本上需要延迟半秒,以便为所有 NSTextField 一个接一个地显示一个 NSTextField,但我不知道该怎么做。我看着使用DispatchQueue.main.asyncAfter(deadline: .now() + 0.5),但不能完全弄清楚在没有所有东西同时出现的情况下完成这项工作的代码......

我确定我在这里遗漏了一些简单的东西。

有人可以帮忙吗?

0 投票
2 回答
138 浏览

swift - 如何根据 Mac OS 中的窗口大小隐藏子 NSView?

我正在用 swift 编写一个 MacOS 应用程序。窗口中的主要布局如下:

应用程序的布局

NSStackView 有一个侧边栏(NSTableView)和一个 NSView。我想要达到的目标在这里列出:

  1. 更改窗口大小时,侧边栏的宽度是固定的。
  2. 当窗口宽度小于WIDTH_THRESHOLD时,sideBar 被隐藏。

问题是_

  1. 对于 Target 1,sideBar 和 NSView 的约束如下,但它不起作用,sideBar 的宽度仍然发生变化。

约束

  1. 对于目标 2,该项目具有 aNSWindowController和 a NSViewController。我可以在 中收听窗口大小NSWindowController,但我不知道如何将此消息传输NSViewController到隐藏侧边栏。

请注意,NSStackView 具有类似的属性,Hugging Priority在尺寸检查器中,我可以通过设置这些属性来实现目标吗(如下图)?Clipping Resistance PriorityVisibility Priorities

属性

0 投票
3 回答
1808 浏览

ios - 多行标签和固定大小图标图像的水平 StackView 问题

我想显示一个固定大小为 20px X 20px 的图标图像,当标签只有一行时显示良好,但当标签变为两行时显示不准确。附上截图。

在此处输入图像描述

0 投票
1 回答
89 浏览

swift - macOS NSTextField,NSStackView,NSScrollView 如何在可滚动列表中实现包裹文本?

macOS 开发新手并尝试创建一些非常基本的布局,但是我正在努力将 NSTextFields 添加到位于 NSScrollView 内的 NSStackView,到目前为止,我已经编写了以下内容,但它似乎将文本限制为单行,调整大小适合的窗户......图片

0 投票
1 回答
210 浏览

swift - 使用 NSStackView 自定义 NSView

我正在尝试NSStackView使用始终相同的自定义视图来实现。所以我已经定义了我的 xib 文件,链接了我的类中的所有内容,关联了类,......但我确信我错过了一些东西,因为视图中的内容没有出现。非常感谢您的帮助。

我的故事板:在此处输入图像描述

我的xib文件:在此处输入图像描述

我运行以下代码时的结果:在此处输入图像描述

我的文件是这样的:

0 投票
0 回答
26 浏览

macos - 如何使用堆栈视图对齐行上的按钮而不增加标签

我有 3 个按钮,我想将它们左右对齐。以前我使用不断增长的标签来对齐它们。有没有办法在不增加标签的情况下实现这一目标?

我应该使用什么distribution + hugging priorities等来获得图片上的正确配置?

PS:StackView固定在左、下、右。

在此处输入图像描述

0 投票
1 回答
130 浏览

objective-c - NSStackView,当其中一个子视图被隐藏时填充视图

我有一个具有这种行为的垂直 NSStackView。它有两个子视图,其中一个位于堆栈视图的顶部,具有固定的高度。然后,还有另一个视图将覆盖视图中的剩余空间。类似于下图。我当前的代码已经显示如下视图:

在此处输入图像描述

我想要一种行为,当我隐藏顶视图或 ViewA 时,ViewB 占据整个堆栈视图的高度。像这张图片:

在此处输入图像描述

我正在以编程方式执行此操作,但是当我将 ViewA 设置为隐藏时,ViewB 不会占用整个可用空间。将 ViewA 空间留在那里。

我当前的代码已经像第一张图片一样显示了 UI,它是:

我不确定在隐藏 ViewA 时需要添加什么以允许 ViewB 增大大小。另外,在我隐藏viewB之后,我调用了该layoutSubtreeIfNeeded方法。