在我的应用程序中,在某些边缘情况下,我可能会调用
[view removeFromSuperView]
两次。这会导致崩溃或其他错误吗?
不,除非您的代码中有其他问题(例如在第二次调用之前释放了视图)。
从错误的角度来看,如果您在删除视图后丢弃视图,您应该没问题。如果您将视图添加到新的超级视图,您可能会导致该视图被删除(这可能会导致它被破坏)。
这篇文章很老了,但在当前版本中,当你调用removeFromSuperView()
两次时,应用程序会崩溃,至少在 Swift 中是这样。
您收到以下错误:
Fatal error: Unexpectedly found nil while implicitly unwrapping an Optional value
2019-05-23 17:29:03.819930+0530 PIM[9117:140811] Fatal error: Unexpectedly found nil while implicitly unwrapping an Optional value
我相信发生这种情况是因为我的视图为零,因为它第一次从超级视图中删除。所以检查 nil 应该解决崩溃:
if (myView != nil) {
// Perform Further Operations
}
希望这可以帮助。