特立独行的问题:在 NSView 上添加子视图时
Posted
技术标签:
【中文标题】特立独行的问题:在 NSView 上添加子视图时【英文标题】:Maverick Issue : While adding a subview on NSView 【发布时间】:2013-11-21 05:51:08 【问题描述】:我有一个 NSView(outlet - detailsView) ,然后是一个 NSSplitView (outlet - detailsSpiltView) ,拆分视图中有两个子视图,在这些子视图中有不同的滚动视图和表格视图。
NSView(detailsView)
|
NSSplitView(detailsSplitView)
| |
NSView NSView
| |
NSScrollView NSScrollView
| |
NSTableView NSTableVIew
在某种情况下,我在 detailsView 上添加了一个错误视图,而在其他情况下,表格视图将被填充: 加载errorView的代码如下:
[self.errorView setFrame:[self.detailsSplitView frame]];
[self.errorView setBackgroundColor:ERR_BG_COLOR];
[self.errorView setAlphaValue:0.85];
[self.detailsView addSubview:self.errorView];
它在 Mountain Lion 中完美运行,但在 Maverick 中,errorView 被加载到表格视图后面。 我什至尝试使用代码将表格视图发送回去
[tableView1 sendToBack];
[tableView2 sendToBack];
[self.detailsView addSubview:self.errorView positioned:NSWindowAbove relativeTo:self.detailsSplitView];
但是仍然在tableview的后面加载errorview。
【问题讨论】:
你试过我的答案了吗? 【参考方案1】:我在 addSubView 方法下添加了以下代码,它起作用了:
--------
[self.detailsView addSubview:self.errorView];
[self.errorView setWantsLayer:YES];
【讨论】:
以上是关于特立独行的问题:在 NSView 上添加子视图时的主要内容,如果未能解决你的问题,请参考以下文章