我在主视图控制器(parentView)上添加了一个子视图(childView),用于从菜单中选择一些选项。但是当我从视图中删除它时,父视图的属性返回null。任何人都可以解释这种行为。我也在使用ARC。
这就是我添加子视图的方式:
resolutionPopUp=[ResolutionPopUp alloc];
resolutionPopUp.resPopStr = combinedUrl;
[self.view addSubview:resolutionPopUp.view];
当我使用:
删除子视图时[self.view removeFromSuperview];
现有视图控制器的所有属性都返回null。
答案 0 :(得分:0)
[self.view removeFromSuperview]
从其父级(将是UIWindow
)中删除父视图,并导致self.view
被收集。删除子视图resolutionPopUp.view
的正确方法是:
[resolutionPopUp.view removeFromSuperview];
这将从resolutionPopUp.view
中移除self.view
。
答案 1 :(得分:0)
self.view是你的parentViewController。你正在删除它,所以这是你获得null Value的主要原因。 而不是那个,用户
resolutionPopUp=[ResolutionPopUp alloc];
resolutionPopUp.resPopStr = combinedUrl;
[self.view addSubview:resolutionPopUp.view];
[resolutionPopUp.view removeFromSuperView];
这是正确的方法。