0

我在 NSWindow contentView 中有 4 个 NSView(A、B、C、D),一个接一个(就像一堆 NSView)。我使用 IB 添加了视图并将它们与文件所有者连接起来。每个视图都有一个 NSViewController。我想以这种方式排列视图|A|B|C|D|。但是在加载所有视图后,这就是我所拥有的:|A|B|D|C|。我想在其应有的位置重新排序 NSView C。

我尝试使用 addSubview:positioned:relativeTo: [[self.window contentView] addSubview:viewC 定位:NSWindowBelow relativeTo:viewD];

但现在 NSView 永远不会显示。

如何更改 viewC 顺序?

谢谢!

4

1 回答 1

0

您可以通过在左侧面板中更改视图的顺序来控制视图在 xib 中的相对“垂直”(前/后)位置:

Interface Builder 中的面板

我在这里组织不同视图的方式,“视图D”在前面,“视图C”在后面,“视图B”在“视图C”后面,“视图A”在它们后面。结果如下:

有序视图演示

对于这个演示,我将四个视图中的每一个都设置为图层托管并设置视图的背景颜色,以便

  • 视图 A 为红色
  • 视图 B 为绿色
  • 视图 C 为蓝色
  • 视图 D 为黑色

如您所见,最底部的视图视图 D 位于前面,视图 C 位于其后面,依此类推。

于 2012-10-25T04:00:55.210 回答