esh*_*esh 19 swift ios8 ios-app-extension
今天的扩展程序没有出现在Swift应用程序中,但它在Objective C应用程序中出现.
我所做的是在故事板上为快速和客观的c应用添加一些带有一些内容的UILabel.
它出现在我运行Objective C应用程序时,但不是在我执行Swift应用程序时.
我在这里错过了什么吗?
San*_*aus 26
您可以注释掉提供的init方法.
// init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?) {
// super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)
// // Custom initialization
// }
Run Code Online (Sandbox Code Playgroud)
这将允许您的扩展程序正常运行.这个问题似乎是由Swift和Objective-C之间不同的初始化程序行为引起的.删除上面的初始化程序将从超类继承所有必需的初始值设定项.
在apple developer论坛上找到该解决方案供您参考.
注意:Clean and Build在更改生效之前,您可能需要执行此项目
扩展名实际上是崩溃的,错误如下:
fatal error: use of unimplemented initializer 'init(coder:)' for class 'com_blabla_blabla_MyTodayExtension.TodayViewController'
Run Code Online (Sandbox Code Playgroud)
这表明另一种选择是实施:
init(coder aDecoder: NSCoder!) {
super.init(coder: aDecoder)
// Custom initialization here
}
Run Code Online (Sandbox Code Playgroud)
如果你想保留自定义初始化的能力.
| 归档时间: |
|
| 查看次数: |
6662 次 |
| 最近记录: |