Iphone 将子视图添加到UIImageView,UIImageView是IB中UIViewController的视图出口

Iphone 将子视图添加到UIImageView,UIImageView是IB中UIViewController的视图出口,iphone,ios,uiview,interface-builder,uiimageview,Iphone,Ios,Uiview,Interface Builder,Uiimageview,我在.xib文件中有一个UIViewController对象。我向其中添加一个UIImageView,然后尝试添加一个按钮作为UIImageView的子视图。它取代了UIImageView。如果两个视图都是UIView的子视图,则可以正常工作。有什么好处?我认为这是可行的,因为UIImageView是UIView的一个子类?一个UIImageView是它自己的对象,一个UIButton是它自己的对象。UIImageView是图像的出口占位符。如果您试图向按钮添加背景图像,您可以使用backgro

我在.xib文件中有一个UIViewController对象。我向其中添加一个UIImageView,然后尝试添加一个按钮作为UIImageView的子视图。它取代了UIImageView。如果两个视图都是UIView的子视图,则可以正常工作。有什么好处?我认为这是可行的,因为UIImageView是UIView的一个子类?

一个
UIImageView
是它自己的对象,一个
UIButton
是它自己的对象。
UIImageView
是图像的出口占位符。如果您试图向按钮添加背景图像,您可以使用background image属性,或者如果您希望背景跨越按钮的边界,您可以将
UIView
放到IB上,并使用代码或子类化
UIImageView
设置样式,只有Apple知道

但是,请看这里的解决方法:


但是
UIImageView
可以有子视图。UIView的背景图像属性?没有这样的东西。这曾经是一个界面生成器错误,但是我不知道它是否已经被修复。在我看来,这不是一个错误,从编程角度来说,UIImageView是UIView的一个子类,因此可以有子视图,但认识到image view对象在目标显示图像方面有点过于简单并不是一门科学。我相信它不打算通过IB添加子视图,因为很明显,您不应该这样做。相反,使用UIView并设置其backgroundImage属性,或者如果更复杂,则使用两个图像视图作为视图的子视图。