replaceSubview:with和ARC正在发布旧视图

时间:2013-01-02 13:49:49

标签: cocoa nsview

使用NSViewreplaceSubview:with:方法换出不同的视图时出现问题。调用该方法时会释放旧视图,即文档状态

  

此方法导致oldView被释放;如果你打算重复使用它,那么   确保在发送此消息之前保留它并将其作为发布   适合将其添加为另一个NSView的子视图。

但是,使用自动引用计数(ARC)时,无法发送保留消息。是否需要更新文档,如何在ARC中使用此方法?

我交换的视图存在于同一个笔尖中,我没有不同的视图控制器。交换视图并存储它们供以后使用的首选方法是什么?

1 个答案:

答案 0 :(得分:2)

首先存储旧视图以供稍后在强变量中使用,然后将其交换出来以防止它被释放。