在当前视图上添加子视图后 UIButton 不起作用

Posted

技术标签:

【中文标题】在当前视图上添加子视图后 UIButton 不起作用【英文标题】:UIButton is not working after adding Subview on present view 【发布时间】:2016-07-29 04:42:47 【问题描述】:

我有一个带有一些按钮的 ViewController1(notificationVC),我想将此 VC1 的视图插入另一个 VC2(infoView)。

-(void)viewDidAppear:(BOOL)animated

    [super viewDidAppear:animated];

    NotificationVC *notificationVC = [[NotificationVC alloc]initWithNibName:@"NotificationVC" bundle:nil];
    notificationVC.view.frame = CGRectMake(0, _infoView.frame.size.height-425,[UIScreen mainScreen].bounds.size.width, 400);
    [_infoView addSubview:notificationVC.view];

这段代码可以很好地显示视图,但问题是,显示后 UIButton 不起作用。

【问题讨论】:

UIButton 的 IBAction 在 NotificationVC 中,因此不会从 infoView 中调用。您可以使用 NSNotification 来实现这种功能。 【参考方案1】:

这是因为通知 VC 应该在那个 ViewController 中处理手势。实现这些将 ViewController 添加为子项

[_infoView addSubview:notificationVC.view];
[self addChildViewController: notificationVC];

别忘了删除它

【讨论】:

以上是关于在当前视图上添加子视图后 UIButton 不起作用的主要内容,如果未能解决你的问题,请参考以下文章

将 UIButton 添加到子视图不起作用

UIButton 在子视图控制器中不起作用

UIButton 在 UIWindow 的子视图上不起作用

我的子视图中的 UIButton 不起作用

以编程方式在子视图中创建 UIButton 不起作用

添加子视图后UIButton无法点击