我正在尝试通过代码将UI组件添加到视图中,并且效果很好,直到我返回视图(通过弹出视图功能)为止,我发现按接口构建器添加的组件仍然存在,而按代码添加的组件却是删除! (我试图在VC中打印子视图,但它们不存在)。
我想念的是什么??
SharedDataObject.m
@property (retain, nonatomic) UIImageView *brandLogoImageView;
@property (retain, nonatomic) UILabel *brandNameLabel;
ViewController.m
- (void)initUI {
if ([[SharedDataObject shared]noLogo]) {
[[[self view] viewWithTag:13]addSubview:[[SharedDataObject shared] brandNameLabel]];
}
else
{
[[[self view] viewWithTag:13]addSubview:[[SharedDataObject shared] brandLogoImageView]];
}
[_brandMessageLabel setText:[[[SharedDataObject shared] loginObject] promotion]];
}
和
- (void)viewDidLoad {
[self initUI];
}
最佳答案
我猜您正在使用此视图[[SharedDataObject shared] brandLogoImageView]
在您按下的视图控制器中。
UIKit框架仅允许每个视图一个 super 视图。因此,您需要重新添加或使用另一个imageview在两个viewcontrollers中显示图像。