ios - XIB 错误中的 UIPageViewController

标签 ios exception uipageviewcontroller

我有一个子类 View Controller ,在 Interface Builder 中,我希望 VC View 的 subview 成为 UIPageViewController 的 View 。我将 UIPageViewController 的数据源设置为文件所有者,并将 View 属性设置为我的 VC 的 subview 。这个功能可以实现吗?或者我不能那样使用 UIPageVC?大多数示例都是针对 Storyboard的,而不是通过 NavigationController 方式推送的旧 VC。我收到此异常“[UIView invalidatePageViewController]”。

最佳答案

当我有一个 UIViewController 作为我的 Root View 时,我也遇到了同样的事情——我的 UIViewController 有一个属性定义为:

@property (strong, nonatomic) IBOutlet UIPageViewController *pageViewController;

我的 IBoutlet 也连接到我的 xib 中的 UIPageViewController。

解决方案:删除 IBoutlet 并断开 UIPageViewController 与我的 xib 的连接

@property (strong, nonatomic) UIPageViewController *pageViewController;

也许崩溃与“每个 View 应该只有一个 View Controller ”有关

此外,如果您这样做,请在“viewdidload”中 _pageViewController.view = _apageView;

_apageView 在您的 UIViewController 中的位置为:

@property (strong, nonatomic) IBOutlet UIView *apageView;

这也会导致同样的崩溃发生——因此你需要做:

[_apageView addSubview:_pageController.view];

那么崩溃不应该发生。

关于ios - XIB 错误中的 UIPageViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15462491/

相关文章:

java线程异常

java - 由其他异常引起的异常

ruby - 在多个地方重新引发同一组异常的 DRY 方式

ios - 使用 Storyboard的 UIPageViewController 示例

ios - 嵌套 UICollectionViews 与 UIPageViewController

ios - 更改导航栏后退按钮并删除标题,使其看起来像在 ios7 中

ios - 在 iOS 8.1 模拟器上测试 BTLE App

ios - 如何为 UIPageViewController 启用 Voice Over 3 手指滑动手势

ios - 接口(interface)不会在 willTransition 中更新(到 : , 与 : ) without DispatchQueue. main.async

ios - SwiftUI ForEach 未更新 ObservableObject 类数组的以下更改