在removeFromSuperview之前检查viewWithTag是否存在

yos*_*osh 2 tags iphone cocoa cocoa-touch view

[[self.view viewWithTag:999] removeFromSuperview];不检查视图是否确实存在的情况下使用是否安全?

模拟器上没有错误,但它会在真实设备上造成问题吗?

没有使用这种情况有什么缺点吗?

Emp*_*ack 11

[[self.view viewWithTag:999] removeFromSuperview];直接打电话完全没问题.如果视图存在,那么[self.view viewWithTag:999]将返回视图,它将从其超级视图中删除.如果视图不存在,那么[self.view viewWithTag:999]将返回nil传递任何信息,以不会采取任何影响.

因此,在您的情况下,无需检查视图是否确实存在.