pushViewController(UIViewController(), animated: true)在自定义集合视图单元格按钮目标函数中不起作用的原因可能是因为缺少导航控制器或者当前视图控制器不是导航控制器的一部分。pushViewController是导航控制器的方法,用于将新的视图控制器推入导航堆栈并显示新的视图控制器。
解决该问题的方法是确保当前视图控制器是导航控制器的一部分,并且导航控制器已正确初始化。可以通过以下步骤来解决该问题:
if let navigationController = self.navigationController {
// 当前视图控制器是导航控制器的一部分
navigationController.pushViewController(UIViewController(), animated: true)
} else {
// 当前视图控制器不是导航控制器的一部分
// 可以尝试使用其他方式进行页面跳转,如presentViewController等
}
let navigationController = UINavigationController(rootViewController: YourViewController())
self.present(navigationController, animated: true, completion: nil)
在这个示例中,我们创建了一个导航控制器,并将YourViewController作为根视图控制器。然后使用present方法将导航控制器呈现在当前视图控制器上。
总结:
如果pushViewController(UIViewController(), animated: true)在自定义集合视图单元格按钮目标函数中不起作用,可能是因为缺少导航控制器或者当前视图控制器不是导航控制器的一部分。需要确保当前视图控制器是导航控制器的一部分,并且导航控制器已正确初始化并与当前视图控制器相关联。
领取专属 10元无门槛券
手把手带您无忧上云