【问题标题】:UIStoryboard storyboardWithName:@"Keyboard" keeps reloadingUIStoryboard storyboardWithName:@"Keyboard" 不断重新加载
【发布时间】:2016-11-08 00:45:57
【问题描述】:

我正在创建一个自定义键盘,用于重新创建应用提交所需的数字和十进制键盘。目前我正在使用的方法:

if ([self isOpenAccessGranted] == false)  {
} else {
}

检查用户是否允许完全访问。当我尝试使用以下方法加载我的故事板文件(Keyboard.storyboard)时:

    UIStoryboard *sb = [UIStoryboard storyboardWithName:@"Keyboard" bundle:nil];
    UIViewController *vc = [sb instantiateViewControllerWithIdentifier:@"KeyboardViewController"];
    [self presentViewController:vc animated:YES completion:nil];

storyboard 文件在我的自定义键盘视图中不断刷新,并且键盘的功能不起作用。我用故事板 ID (KeyboardViewController) 标记它并检查了storyboardID 按钮。

值得注意的是,当isOpenAccessGrantred 设置为true 时,它​​会加载使用集合框架构建的以编程方式创建的UICollectionview 键盘。我怀疑这是导致它的原因,但不完全确定。

任何指导或建议将不胜感激!

【问题讨论】:

  • 我正在调用 'viewDidAppear' 中的 '[UIStoryboard storyboardWirthName:@"Keyboard" bundle:nil]' 方法...我认为这也可能与它有关..

标签: ios objective-c uistoryboard custom-keyboard


【解决方案1】:

我想通了。

如果您使用带有Custom KeyboardStoryboard 文件,请确保编辑您的p-list 以添加以下内容:

NSExtensionMainStoryboard -> String -> Keyboard

并删除以下内容:

NSExtensionPrincipalClass -> KeyboardViewController

【讨论】:

    猜你喜欢
    • 2014-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-06
    相关资源
    最近更新 更多