iOS 应用程序/键盘插件无效

标签 ios swift xcode keyboard

所以我一直在承担学习Swift和XCode接口(interface)的任务,以进入iOS开发。为此,我一直在练习一些项目,这些项目将帮助我了解所有这些,因此我开始了一个制作自定义键盘的项目。但是,由于我猜测这些教程是用旧版本的 Swift/XCode 编写的,所以我不断收到错误,尤其是一个错误。

每当我进入“设置”并添加我的自定义键盘时,我都会使用它,每当我在键盘切换器中切换它时,键盘崩溃并默认返回到原始 iOS 键盘(这在模拟器和我的手机上都会发生. 另外,目标 iOS 是正确的)。在那次崩溃后,我得到了这个错误:

plugin CalculatorKeyboard plugin myName.CalculatorKeyboard.Calculator interrupted
plugin CalculatorKeyboard plugin myName.CalculatorKeyboard.Calculator invalidated

我目前使用的代码:

class KeyboardViewController: UIInputViewController {

var customInterface: UIView!

override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?) {
    super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)

    let nib = UINib(nibName: "Calculator", bundle: nil)
    let objects = nib.instantiateWithOwner(self, options: nil)
    customInterface = objects[0] as! UIView
    }

override func viewDidLoad() {
    super.viewDidLoad()
    view.addSubview(customInterface)
    }
}

旧代码:

// var customInterface: UIView!

    override func viewDidLoad() {
    super.viewDidLoad()
    loadInterface()
}

func loadInterface() {
    let calculatorNib = UINib(nibName: "Calculator", bundle: nil)
    let objects = calculatorNib.instantiateWithOwner(self, options: nil)
    view = objects[0] as! UIView
}

我希望在这方面能得到一些帮助,因为我无法在 Google 上找到任何答案。谢谢你! :)

注意:如果我可以使用旧代码,我会更愿意,因为它在其自身的功能中更清晰。

最佳答案

这会起作用

override func viewDidLoad() {
        super.viewDidLoad()
        let nib = UINib(nibName: "KeyboardView", bundle: nil)
        let objects = nib.instantiateWithOwner(self, options: nil)
        view = objects[0] as! UIView;

    }

还有一个很好的演示应用程序,它是用 swift 和 objective-C 编写的 https://github.com/iManiaq/ios-color-keyboard

编辑 去设置->通用->键盘 在那里你添加你的键盘

enter image description here

在此输入图片描述

enter image description here

关于iOS 应用程序/键盘插件无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38893870/

相关文章:

ios - Swift,将类数组添加到变量中不会更新原始类中的数组内容

ios - 尝试在我的应用程序中集成 Google 登录时找不到 "GoogleService-Info.plist"

ios - Meteor cordova ios 项目 pch 错误

iphone - Xcode 3.2.2 和 Settings.bundle 的本地化

ios - EXC_BAD_ACCESS 和 stringByAppendingString

iphone - 单个屏幕中的多个 TableView

ios - 点击按钮时停止在后台保存到 coredata

ios - 为什么 View 的阴影被创建为内部

ios - 如何访问 SLComposeViewController 中的 POST 按钮?

android - 具有捕获和接受属性的 HTML 文件输入控件工作错误?