我有一个容器视图,该视图设置为我的视图控制器的输入附件视图。每当我出现模态视图控制器时,输入的附件视图都会关闭。

我介绍了模态视图控制器时尝试使用下面的代码。但是,该视图控制器显示了一个图像选择器控制器,并且在显示了该图像选择器控制器后,出现错误“键盘无法显示视图控制器”。有没有一种方法可以使基本视图控制器顶部显示的所有视图控制器的输入附件视图保持打开状态。

let rootViewController: UIViewController = (UIApplication.shared.windows.last?.rootViewController)!
rootViewController.present(addVideoController, animated: true, completion: nil)

最佳答案

我认为没有办法在视图层次结构中保持inputAccessoryView处于活动状态-根据我的经验,将视图推入navigationController堆栈或以模态显示都不会使根的inputAccessoryView可见。这是因为inputAccessoryViewUIViewController类的成员,而不是窗口本身-并且您要激活的新UIViewController没有inputAccessoryView

我相信您将需要在模态显示的inputAccessoryView类中添加一个UIViewController。您可以使用与根视图控制器的类完全相同的方式进行设置。

// call this in your root view controller that has the inputAccessoryView currently displayed
let addViewController = YourViewControllerClass()
modalViewController.inputAccessoryView = self.inputAccessoryView
self.present(addViewController, animated: true, completion: nil))

关于ios - 介绍 View Controller 时如何保持输入附件的 View ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53526594/

10-10 21:32