3DTouch的简单实现(一)重按启动图标出现选项

代码下载链接:GitHub - jiangbin1993/3DTouch  欢迎下载点赞

简介:

3D Touch 是苹果推出的在iphone6和6Plus上  新出的iphone7系列应该也会有的功能。下面就简单介绍一下如何使用在iOS开发中为工程配置这一功能。

上架到appstore的app默认都有一个分享的3D touch 功能。

实现:

一、重按app 启动图标出现功能选项的实现

实现效果如下:

3DTouch的简单实现(一)重按启动图标出现选项_第1张图片

这一步的操作不需要写代码 只需要配置一下工程中的info.plist 文件就能实现。

先添加一个数组UIApplicationShortcutitems  在这个数组里添加字典,每个字典里添加字符串。

下面我配置了两个选项 item0和item1  一个是打开选项,一个是分享选项。

3DTouch的简单实现(一)重按启动图标出现选项_第2张图片


参数说明:

UIApplicationShortcutItemType:该QuickAction的标示符,在整个工程中,必须唯一,相当于QuickAction的名称,通过该名称,识别用户做了哪个点击;

UIApplicationShortcutItemSubtitle:显示在QuickAction主名称下面的子名称;

UIApplicationShortcutItemIconType:该QuickAction的图标。

可以配置多个QuickAction,如图所示,配置了两个,item0和item1。


其中,系统提供的UIApplicationShortcutItemIconType有如下类型:

UIApplicationShortcutIconTypeCompose,

UIApplicationShortcutIconTypePlay,

UIApplicationShortcutIconTypePause,

UIApplicationShortcutIconTypeAdd,

UIApplicationShortcutIconTypeLocation,

UIApplicationShortcutIconTypeSearch,

UIApplicationShortcutIconTypeShare,

UIApplicationShortcutIconTypeProhibit       NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeContact        NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeHome           NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeMarkLocation   NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeFavorite       NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeLove           NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeCloud          NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeInvitation     NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeConfirmation   NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeMail           NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeMessage        NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeDate           NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeTime           NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeCapturePhoto   NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeCaptureVideo   NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeTask           NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeTaskCompleted  NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeAlarm          NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeBookmark       NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeShuffle        NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeAudio          NS_ENUM_AVAILABLE_IOS(9_1),

UIApplicationShortcutIconTypeUpdate         NS_ENUM_AVAILABLE_IOS(9_1)

这样配置好plist文件重按启动图标就可以显示出两个选项了。

配置完plist文件,选项也有了,接下来就应该要实现点击选项的功能逻辑实现啦。

二、点击选项的功能实现:


在Appdelegate中,添加如下方法,对不同的QuickAction进行响应。

// 处理点击3D touch 方法的功能实现

-(void)application:(UIApplication *)application performActionForShortcutItem:(UIApplicationShortcutItem *)shortcutItem completionHandler:(void (^)(BOOL))completionHandler {

if ([shortcutItem.type isEqualToString:@"ShortCutOpen"]) {

NSLog(@"打开了软件");

}

if ([shortcutItem.type isEqualToString:@"ShortCutShare"]) {

NSLog(@"分享");

SecondViewController *vc = [[SecondViewController alloc] init];

[self.window.rootViewController presentViewController:vc animated:YES completion:nil];

}

}

通过条件判断if ([shortcutItem.type isEqualToString:@"ShortCutShare"])来判定点击的是哪个选项,然后实现要进行的操作。


3DTouch Peek和Pop功能的实现链接:3DTouch(二) Peek和Pop功能实现 -

如果本文对你有一丢丢的帮助 请帮我点个喜欢哦。

你可能感兴趣的:(3DTouch的简单实现(一)重按启动图标出现选项)