内容简介:我试图删除故事板文件和相关的Info.plist条目,但这个时间延长停止工作;它甚至不能从XCode启动.操作无法完成. (LaunchServicesError错误0.)正常应用程序(包含应用程序)很容易,因为我们看到它是入门点和应用程序委托,但是如何在扩展上呢?
我试图删除故事板文件和相关的Info.plist条目,但这个时间延长停止工作;它甚至不能从XCode启动.
操作无法完成. (LaunchServicesError错误0.)
正常应用程序(包含应用程序)很容易,因为我们看到它是入门点和应用程序委托,但是如何在扩展上呢?
我做了以下步骤:
>从您的项目中删除故事板文件
>修改info.plist:
转到NSExtension字典,删除此键:NSExtensionMainStoryboard.用这个密钥NSExtensionPrincipalClass替换它,并添加你的ViewController作为值,例如TodayViewController.
之前:
<key>NSExtension</key> <dict> <key>NSExtensionMainStoryboard</key> <string>MainInterface</string> <key>NSExtensionPointIdentifier</key> <string>com.apple.widget-extension</string> </dict>
后:
<key>NSExtension</key> <dict> <key>NSExtensionPrincipalClass</key> <string>TodayViewController</string> <key>NSExtensionPointIdentifier</key> <string>com.apple.widget-extension</string> </dict>
>如果您使用Swift,则必须在目标的“构建设置”中启用“嵌入式内容包含Swift代码”.将其设置为YES.
>另外我必须在我的TodayViewController类(导入之后)添加@objc(TodayViewController).
该应用程序应该运行.但还有另外两件事我不得不做:
>创建视图.显然没有自动创建视图.
所以添加这些行:
override func loadView() { view = UIView(frame:CGRect(x:0.0, y:0, width:320.0, height:200.0)) }
>并在您的viewDidLoad方法中设置小部件的高度:self.preferredContentSize = CGSizeMake(0,200)
http://stackoverflow.com/questions/26037321/how-to-create-a-today-widget-programmatically-without-storyboard-on-ios8
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- Java并发编程(01):线程的创建方式,状态周期管理
- 编程语言 – 哪些语言允许创建跨平台的本机可执行文件?
- Go 语言函数式编程系列教程(九) —— 数据类型篇:数组切片的创建和遍历
- iOS App创建证书,添加Appid,创建配置文件流程
- RabbitMQ集群创建
- 创建哈夫曼树
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
编程珠玑(第二版)
[美] Jon Bentley / 谢君英、石朝江 / 中国电力出版社 / 2004-4 / 28.00元
《编程珠玑(第2版)》是计算机科学方面的经典名著。书的内容围绕程序设计人员面对的一系列实际问题展开。作者Jon Bentley 以其独有的洞察力和创造力,引导读者理解这些问题并学会解决方法,而这些正是程序员实际编程生涯中至关重要的。一起来看看 《编程珠玑(第二版)》 这本书的介绍吧!
SHA 加密
SHA 加密工具
XML、JSON 在线转换
在线XML、JSON转换工具