在removeArrangedSubview中:
为防止在调用堆栈的removeArrangedSubview:方法后视图出现在屏幕上,请通过调用视图的removeFromSuperview方法从子视图数组中显式删除视图。
在布置子视图中:
每当调用已安排视图的removeFromSuperview方法时,堆栈视图就会将该视图从其organizedSubview数组中删除。
从这些看来,仅调用removeFromSuperview就足以删除一个子视图,而我一直在使用它而没有问题。当调用removeFromSuperview时,我还通过记录rangingSubviews数组的计数来确认此行为。
但是,这里有许多有关S / O的教程和评论,请两者都称呼。是否有一个原因?还是人们只是因为文档中的说明而这样做?
removeArrangedSubview
不知道自己也应该打电话removeFromSuperview
,这确实清除了观点,arrangedSubviews
但观点仍在subviews
引起各种混乱的破坏。添加removeFromSuperview
呼叫(一旦我看到这个问题!)就解决了。