我的导航栏上有一个按钮。当我单击它时,它曾经打开带有搜索选项的alertsheet
。单击搜索按钮将触发其中带有tableView
和textField
的弹出窗口。
在textField
中搜索内容并单击搜索按钮,将使用来自服务器的数据填充tableView
。但是在加载所有数据后,它会因该异常而崩溃。
例外:
由于未捕获的异常“ NSInvalidArgumentException”而终止应用程序,原因:“应用程序试图以模态形式显示活动的控制器Irving。 SearchViewController:0x7fe655d3c7d0。'
This is the popover view-link image
我对IOS swift非常陌生,还看到了其他答案,但是我无法获得这些东西。我已经参考了以下链接,但仍然无法获得这些内容。请帮助我,谢谢。请给我简短的想法。
How to prevent present modally an active controller?
我的代码:
let Search = UIAlertAction(title: "Search", style: .default) { (action) in
let popOverVC = UIStoryboard(name: "Main", bundle: nil)
.instantiateViewController(withIdentifier: "search_popover") as! SearchViewController
self.addChildViewController(popOverVC)
popOverVC.view.frame = self.view.frame
self.view.addSubview(popOverVC.view)
popOverVC.didMove(toParentViewController: self)
}
sheet.addAction(Search)
sheet.addAction(cancel_button)
present(sheet, animated: true, completion: nil)