【问题标题】:Unable to add views to a scrollView无法将视图添加到滚动视图
【发布时间】:2014-09-10 13:44:15
【问题描述】:

我有一个方法,它接受一个 viewController 和一个标识符并返回一个 viewController。它看起来像这样:

- (UIViewController *)createStepVC:(UIViewController *)viewController identifier:(NSString *)identifier
{
    viewController = [self.storyboard instantiateViewControllerWithIdentifier:identifier];
    [_scrollView addSubview:viewController.view];
    [self addChildViewController:viewController];
    [viewController didMoveToParentViewController:self];
    viewController.view.translatesAutoresizingMaskIntoConstraints = NO;
    return viewController;
}

在 viewDidLoad 我这样称呼它:

_step1VC = (TNSettingsViewController *)[self createStepVC:_step1VC identifier:@"TNSettingsViewController"];

_step1VC 类型为TNSettingsViewController 继承自 UIViewController。

当我尝试运行它时 - 会发生这种情况:

scrollView 是一个已连接的IBOutlet。所有情节提要 ID 都是正确的。我不知道为什么会这样。

任何帮助将不胜感激!

【问题讨论】:

  • 是在这一行崩溃还是你手动设置了断点?如果有,控制台会记录什么消息?
  • @RinatKhanov 它在那里崩溃。我只添加了一个异常断点。
  • 向我们展示回溯。
  • 在断点上迭代几次,它应该向控制台打印一条错误消息。使用错误消息更新您的问题。
  • @RinatKhanov 啊,当我这样做时 - 我得到:Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<TNSettingsViewController 0x109223460> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key backgroundImage.' *** First throw call stack: 现在我应该能够弄清楚了。谢谢! :)

标签: ios objective-c uiviewcontroller uiscrollview uistoryboard


【解决方案1】:

根据错误消息,您很可能在 Storyboard 的某个地方有一个指向 backgroundImage 插座的视图,而 TNSettingsViewController 中不再显示该插座。

【讨论】:

  • 我解决了它,但你应该得到“正确答案” - 遍历断点给了我一个真正可以处理的错误:)
猜你喜欢
  • 1970-01-01
  • 2020-12-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-19
  • 1970-01-01
  • 2021-01-20
  • 1970-01-01
相关资源
最近更新 更多