ios - 提供的视图控制器数量 (0) 与请求的转换所需的数量 (1) 不匹配
问题描述
我们已经使用页面视图控制器显示滑动以指示用户登录指令,我们面临核心基础崩溃,下面是堆栈跟踪和代码片段:
堆栈跟踪:
Fatal Exception: NSInvalidArgumentException
The number of view controllers provided (0) doesn't match the number required (1) for the requested transition
keyboard_arrow_up
Fatal Exception: NSInvalidArgumentException
0 CoreFoundation 0x2362a8518 __exceptionPreprocess
1 libobjc.A.dylib 0x2354839f8 objc_exception_throw
2 CoreFoundation 0x2361b2c70 -[NSCache init]
3 UIKitCore 0x2620c1e94 -[UIPageViewController _validatedViewControllersForTransitionWithViewControllers:animated:]
4 UIKitCore 0x2620c2a2c -[UIPageViewController _setViewControllers:withCurlOfType:fromLocation:direction:animated:notifyDelegate:completion:]
extension HelpPageViewController: UIPageViewControllerDataSource {
func pageViewController(_ pageViewController: UIPageViewController, viewControllerBefore viewController: UIViewController) -> UIViewController? {
guard let viewControllers = pageViewControllers, let index = viewControllers.index(of: viewController), index > 0 else { return nil }
return viewControllers[index - 1]
}
func pageViewController(_ pageViewController: UIPageViewController, viewControllerAfter viewController: UIViewController) -> UIViewController? {
guard let viewControllers = pageViewControllers, let index = viewControllers.index(of: viewController), index < viewControllers.count - 1 else { return nil }
return viewControllers[index + 1]
}
}
override func viewDidLoad() {
super.viewDidLoad()
dataSource = self
pageViewControllers = helpType?.viewControllers
if let helpViewControllers = pageViewControllers {
DispatchQueue.main.async{
if let firstViewController = helpViewControllers.first {
self.setViewControllers([firstViewController], direction: .forward, animated: false, completion: nil)
}
}
}
}
var helpType:HelpType?
var pageViewControllers:[UIViewController]?
}
解决方案
推荐阅读
- express - 在 next.js 编译时,中间件被命中太多次
- java - 仅当流不是空后缀时,自定义收集器才在分隔符、后缀和前缀上加入流
- javascript - 我们如何在 jquery 中对“This”事件应用条件?
- angular - 如何处理中的键盘事件
我用 div 创建了一个虚拟滚动列表。使用事件绑定,我可以附加动作来单击 dblclick 事件。我想绑定一个像 KeyPress 这样的键盘事件来检测回车键并模仿鼠标点击的动作。无论我尝试什么,事件都不会触发。我究竟做错了什么?
<cdk-virtual-sc
- arduino - How to control an led from Thingspeak server using SIM900A and Arduino?
- php - PHP中的多个进程正在使用相同的变量值?
- r - 对于每组,每周,在 R 中找到前 X 周的观察值总和
- ignite - Apache Ignite 节点的最大内存大小是多少?
- delphi - 如何在 Delphi 调试期间查看通用 tList
- python - importError pdfkit 与 docker 要求 wkhtmltopdf