Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 为什么我使用removeFromSuperview()时UIImageView会删除?_Swift_Uiimageview - Fatal编程技术网

Swift 为什么我使用removeFromSuperview()时UIImageView会删除?

Swift 为什么我使用removeFromSuperview()时UIImageView会删除?,swift,uiimageview,Swift,Uiimageview,为什么我在Swift中使用removeFromSuperview()时UIImageView会从数组中删除 // display UIImageView var imageViews: [UIImageView] = [UIImageView]() imageViews.append(UIImageView(image: UIImage(named: "test.jpg"))) let imageView = imageViews[0] self.view.addSubview(imageVie

为什么我在Swift中使用removeFromSuperview()时UIImageView会从数组中删除

// display UIImageView
var imageViews: [UIImageView] = [UIImageView]()
imageViews.append(UIImageView(image: UIImage(named: "test.jpg")))
let imageView = imageViews[0]
self.view.addSubview(imageView) // display image view

let overlayView = UIView(frame: self.view.frame)
overlayView.addSubview(imageView)
self.view.addSubview(overlayView)
overlayView.removeFromSuperview()

// not display image view

您正在将
imageView
添加到
overlayView
。稍后,您将从superview中删除
overlayView


删除视图(
removeFromSuperview
:)时,将对该视图及其子视图执行释放。因此,您的
imageView
将被删除。当您将
imageView
添加到
overlayView
并随后从其超级视图中删除
overlayView
时,请在
removeFromSuperview
上检查官方,这也将删除
overlayView
的所有子视图,包括您的
imageView
。因此它不会显示。

我认为这是不可能的。您确定这是全部代码吗?您的问题无法在标准环境中表示。我们需要更多的信息,也许是关于你使用的多线程对不起,我错了。我改变了问题,所以我喜欢这个。但它不会显示<代码>让overlayView=UIView(frame:self.view.frame)让tmpImageView=self.headerImageViews[self.pageControl.currentPage]让currentImageView=self.headerImageViews[self.pageControl.currentPage]overlayView.addSubview(overlayView)overlayView.removeFromSuperview()self.headerImageViews[self.pageControl.currentPage]=tmpImageView//empty我知道。但是,我首先直接将imageview添加到self.view中。因此,它不是overlayview的子视图。