从情节提要切换到程序化

时间:2018-07-21 17:11:14

标签: swift custom-keyboard

我为iOS构建了自定义键盘扩展。我最初使用情节提要构建了它,并且-长话短说-并没有那么好用,因为使用情节提要制作键盘时会发生许多故障和崩溃。因此,我以编程方式对其进行了重建。

我已经以编程方式复制整个内容的方式达到了95%,但是关键组件不起作用-一个非常重要的PickerView。

在应用程序的故事板版本中,PickerView是一个全局变量,可以使用几种不同的功能进行操作。效果很好!

但是,现在,我已经以编程方式复制了整个应用程序。所有的按钮,视图等都很好用。但是,将PickerView声明为全局变量时键盘崩溃。我以为我应该将其设置为@objc func setupPickerView上的局部变量,但是意识到其他功能(需要由其他功能操纵)将无法对其进行操纵。

与代码(程序布局除外)唯一的区别是:

@IBOutlet weak var timerPicker: UIPickerView!

var timerPicker: UIPickerView!

我一直在阅读,看到很多关于从不使用全局变量的信息,所以我明白了。但是我想知道的是-我在这里想念什么?我应该如何解决这个问题?我需要退后一步并重构所有内容,还是可能缺少一些简单的东西?

此外,我是一个自学成才的新手,调试扩展非常困难,我可以使用一些指导。谢谢!

1 个答案:

答案 0 :(得分:0)

我最终学习并为该变量创建了一个“单例”类,现在一切正常!

(回声,回声,回声...)