iOS TodayExtension

如何快速建立TodayExtension,让你在开发过程中少走弯路

首先要了解什么是TodayExtension

扩展(Extension)是iOS 8中引入的一个非常重要的新特性。扩展让app之间的数据交互成为可能。用户可以在app中使用其他应用提供的功能,而无需离开当前的应用。

iOS 8系统有6个支持扩展的系统区域,分别是Today、Share、Action、Photo Editing、Storage Provider、Custom keyboard。支持扩展的系统区域也被称为扩展点。对于赛事比分,股票、天气、快递这类需要实时获取的信息,可以在通知中心的Today视图中创建一个Today扩展实现。Today扩展又称为Widget。本文主要是介绍Today Extension的用法。

iOS TodayExtension_第1张图片

这就是我写的一个历史上今天关于TodayExtension的部分,下面介绍如何创建TodayExtension

点击File->New->选择Target

iOS TodayExtension_第2张图片
点击File->New->选择Target
iOS TodayExtension_第3张图片
iOS TodayExtension_第4张图片
如果不想使用Storyboard,下边会介绍

这就是创建好的TodayExtension,先运行一下,如图所示

选择Target选择前边带E那个标志的然后Run
iOS TodayExtension_第5张图片
这就是创建好的TodayExtension

关于删除Storyboard的配置方法,首先删除Storyboard文件,并修改TodayExtension的Plist文件中关于NSExtension的值


首先删除NSExtensionMainStoryboard


然后添加NSExtensionPrincipalClass 后边的值就是你要显示的Controller

开始写代码

iOS TodayExtension_第6张图片
在TodayViewController.m文件实现如下方法

然后运行,查看效果

iOS TodayExtension_第7张图片
运行结果

因为默认的inset就是这样,如果不想这样需要添加如下代码

- (UIEdgeInsets)widgetMarginInsetsForProposedMarginInsets:(UIEdgeInsets)defaultMarginInsets{

return UIEdgeInsetsZero;

}

iOS TodayExtension_第8张图片


就这么简单,去实现你的第一个TodayExtension吧

你可能感兴趣的:(iOS TodayExtension)