如何删除NSView的子视图

时间:2013-02-22 15:45:37

标签: nsview subview subviews

我对NSView的子视图有疑问。我正在尝试使用NSArray来检索[myView子视图](我只有一个视图),我想删除这个子视图,但我不知道该怎么做。我试过了

   NSArray *subviews = [self.mainView subviews];
   [self.mainView replaceSubview:subviews[0] with:[self.mainViewController view]];

但是XCode崩溃了,我把这个日志记录到了控制台:

   -[NSEvent subviews]: unrecognized selector sent to instance 0x102202aa0

我不知道问题是什么....

所以,如果你们中的一些人可以帮助我,那将非常友善......

1 个答案:

答案 0 :(得分:1)

好吧,对我感到羞耻!

我实际上是在错误的地方寻找问题......

我最终做的是:我在mainView中有两个子视图,索引0的一个是背景NSimageView(我想保留),第二个(索引1)是我想要的取代

所以这是解决方案:

NSArray *subviews = [self.mainView subviews];
NSView *secondSubView = [subviews objectAtIndex:1];
[self.mainView replaceSubview:secondSubView with:[self.myViewController view]];

享受!