xcode7添加Widget注意事项

1.添加Widget让APP数据互通是报错处理

xcode->targets中的主程序中的bundle ID和today extension中的bundle id都要在开发者账号下创建,且开发者账号还要创建一个App Groups,否则会报错,如图:

xcode7添加Widget注意事项_第1张图片
图1
xcode7添加Widget注意事项_第2张图片
图2

参考网址https://onevcat.com/2014/08/notification-today-widget/

2.widget中添加空间的方式(storyboard或者故事板)

添加widget系统生成的info.plist文件,默认是使用Storyboard 实现的界面;如果你想使用代码实现是界面的搭建,需更改这个配置文件,如图3:

xcode7添加Widget注意事项_第3张图片
图3

在TodayViewController中的ViewDidLoad中添加:preferredContentSize = CGSizeMake(0, 80)//在设定 preferredContentSize 时,指定的宽度都是无效的,系统会自动将其处理为整屏的宽度,所以扔个 0 进去就好了,

在TodayViewController中添加:

func widgetMarginInsetsForProposedMarginInsets(defaultMarginInsets: UIEdgeInsets) -> UIEdgeInsets {

return UIEdgeInsetsMake(0, 0, 0, 0)

}

参考网址https://www.ishuo.cn/doc/ermjmiqf.html

3.widget从Assets中添加图片

widget系统生成的info.plist文件中,改成storyboard添加控件的方式,将图3中的info.plist文件修改一下

在xcode中选择Assets.xcassets文件,在xcode最右侧选择show the file inspector,选择target Membership,勾选项目中对应的today extension,结果如图:

xcode7添加Widget注意事项_第4张图片
图4

然后按钮在storyboard中就可以添加Assets.xcassets中的image

参考网址http://stackoverflow.com/questions/33150654/image-not-appearing-in-today-extension-widget

4.添加Extension的PP证书

开发者账号下不但要创建一个Extension的App ID,还要创建一个Extension的PP证书安装到Xcode上

PP证书的作用就是将前面所有的证书集成于PP证书中安装到真机上

你可能感兴趣的:(xcode7添加Widget注意事项)