Tom*_*myG 4 iphone objective-c uiviewcontroller uiview ios
我查了很多这种方法的例子,但仍然无法弄清楚我在做什么.我正在尝试在当前视图下添加另一个视图,然后在用户单击当前屏幕上的按钮时删除当前视图.由于某种原因,视图消失了,但我没有看到应该低于它的视图.我只是一个白色的屏幕.
这是我当前的ViewDidLoad(顶部的那个 - 为了示例的ViewControllerTop)视图:
- (void)viewDidLoad
{
[super viewDidLoad];
viewControllerBottom = [[ViewControllerBottom alloc] init];
[self.view insertSubview:viewControllerBottom.view belowSubview:self.view];
}
Run Code Online (Sandbox Code Playgroud)
按照这种方法,有一种方法在用户点击按钮后触发:
- (IBAction)goToBottomView:(id)sender {
[self.view.superview removeFromSuperview];
}
Run Code Online (Sandbox Code Playgroud)
有没有人看到这个有什么问题?谢谢您的帮助!
顺便说一句 - 即使它很愚蠢,我也尝试使用insertSubview:aboveSubview但它也不起作用.
pgb*_*pgb 13
我认为你的代码存在根本性的错误.你在做:
[self.view insertSubview:viewControllerBottom.view belowSubview:self.view]
Run Code Online (Sandbox Code Playgroud)
所以你在belowSubview:参数中传递的视图需要是子视图self.view,而self.view不是!
insertSubview:belowSubview: 如果您按预期使用接收器对象的子视图,它将正常工作.
| 归档时间: |
|
| 查看次数: |
8177 次 |
| 最近记录: |