iOS8中添加的extensions总结(一)——今日扩展
- 通知栏中的今日扩展
- 分享扩展
- Action扩展
- 图片编辑扩展
- 文件管理扩展
- 第三方键盘扩展
注:此教程来源于http://www.raywenderlich.com的《iOS8 by Tutorials》
关于App extensions 的原理,即How extensions work

其中//1.调用openURL(),它是UIApplication的一个方法,然而,在扩展中并没有UIApplication对象,Apple提供了新的接口:在NSExtensionContext中有下面的方法:
- (void)openURL:(NSURL *)URL completionHandler:(void (^)(BOOL success))completionHandler
//2.建立一个shared data container:使用NSUserDefaults存取数据、直接建立一个文件负责数据存取
通知栏中的今日扩展(Today extensions)
在iOS8中开发者可以在通知栏中定制自己App的今日界面显示,如下图:
















//在最后说明下NCWidgetProviding中的几个方法
//下面的方法是今日扩展的刷新设置
- (void)widgetPerformUpdateWithCompletionHandler:(void (^)(NCUpdateResult result))completionHandler {
// If an error is encountered, use NCUpdateResultFailed
// If there's no update required, use NCUpdateResultNoData
// If there's an update, use NCUpdateResultNewData
[self updateWithCurrencyData];
completionHandler(NCUpdateResultNewData);
}
//下面的方法设置界面左侧的偏移量
- (UIEdgeInsets)widgetMarginInsetsForProposedMarginInsets:(UIEdgeInsets)defaultMarginInsets {
return UIEdgeInsetsZero;//使左侧默认留白区域被填充
}
//下面的方法用于实现vibrancy特效
+ (UIVibrancyEffect *)notificationCenterVibrancyEffect;
实现源码:源代码点击
iOS8中添加的extensions总结(一)——今日扩展的更多相关文章
- iOS8中添加的extensions总结(四)——Action扩展
Action扩展 注:此教程来源于http://www.raywenderlich.com的<iOS8 by Tutorials> 1.准备 本次教程利用网站bitly.com进行 bit ...
- iOS8中添加的extensions总结(三)——图片编辑扩展
图片编辑扩展 注:此教程来源于http://www.raywenderlich.com的<iOS8 by Tutorials> 1.准备 与(二)类似的使用Imgur作为图片来源 2. ...
- iOS8中添加的extensions总结(二)——分享扩展
分享扩展 注:此教程来源于http://www.raywenderlich.com的<iOS8 by Tutorials> 1.准备 这次例子来源于国外的图片分享网站Imgur.com 首 ...
- 系统定位在iOS8中的改变
CLLocationManager这个系统定位的类在iOS8之前要实现定位,只需要遵守CLLocationManagerDelegate这个代理即可: - (void)startLocate { ...
- 在Salesforce中向Page Layout中添加Visualforce Page
在Salesforce中可以向Object所对应的Layout中添加我们自定义的Visualforce Page. 此时的Visualforce Page与Asp.Net MVC中的Partial V ...
- iOS8中使用CoreLocation定位[转]
本文转自:http://blog.devzeng.com/blog/ios8-corelocation-framework.html iOS8以前使用CoreLocation定位 1.首先定义一个全局 ...
- VS2010在C#头文件中添加文件注释的方法
步骤: 1.VS2010 中找到安装盘符(本人安装目录在D盘,所以以D盘为例)D:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\I ...
- iOS8中的UIAlertController
转: iOS8推出了几个新的“controller”,主要是把类似之前的UIAlertView变成了UIAlertController,这不经意的改变,貌似把我之前理解的“controlle ...
- 初探 iOS8 中的 Size Class
初探 iOS8 中的 Size Class 分类: Ios2014-09-16 13:11 4323人阅读 评论(1) 收藏 举报 目录(?)[+] 初探 iOS8 中的 Size Class ...
随机推荐
- java打jar包 命令行cmd在当前路径打jar包
不尝试就永远不会知道真相. 今天搞webservice,需要将服务单独拉出来发布.打jar包的时候要打成aar包,所以用到cmd下的打jar包的命令. 当前路径打jar包,一定要先进到这个文件夹,然后 ...
- Ajax页面逻辑
逻辑上模拟整个与服务器通信的过程.在没有真正与服务器通信的时候,如何写这样的ajax请求. 先根据页面结构创建一个静态数据(JSON) var arrival_address_data={" ...
- ASP.NET内置对象
ASP.NET中有六个内置对象 Response:向客户端输出信息或设置客户端输出状态. Request:获取客户端信息. Server:访问服务器的方法和属性. Application:用于将信息保 ...
- POJ 3189 Steady Cow Assignment
题意:每个奶牛对所有的牛棚有个排名(根据喜欢程度排的),每个牛棚能够入住的牛的数量有个上限,重新给牛分配牛棚,使牛棚在牛心中的排名差(所有牛中最大排名和最小排名之差)最小. 题目输入: 首先是两个 ...
- Missing Number ——LeetCode
Given an array containing n distinct numbers taken from 0, 1, 2, ..., n, find the one that is missin ...
- Container With Most Water——LeetCode
Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai). ...
- HDOJ(HDU) 2164 Rock, Paper, or Scissors?
Problem Description Rock, Paper, Scissors is a two player game, where each player simultaneously cho ...
- Linux下p2p的聊天功能实现
Linux下p2p的聊天功能实现细节 Do one thing at a time, and do well. 今天闲着没事,写一个P2P的点对点的聊天功能的小程序,我觉得对网络编程初学者的学习很有用 ...
- 程序集引用异常 处理 app.config内控制runtime运行时应用的程序集版本指向 assemblyBinding结点 bindingRedirect
异常: 解决方法: <?xml version="1.0" encoding="utf-8"?> <configuration> < ...
- kNN
传统的kNN模型 为了获得用户对产品的评分预测值,kNN模型一般包括以下三步: 1.计算相似度 这步中计算每对产品之间的相似度 Person correlation: \[S _ {mn} ^{P} ...