看着很多主流的app已经开始支持了3D Touch,相信作为一名开发者你也想让你的app拥有利用好这个黑科技吧;现在来简单记录下如何搭建长按弹出的快捷标签。
如果你有iPhone 6s以上的机子的话可以直接用上3D Touch,没有的话也没关系,上一篇文章也详细书写了 如何用模拟器实现这个功能了,>>>>传送门,点击进入<<<<。好了,废话不多说开动吧。
第一步
创建一个空的工程.
第二步
直接在程序入口处添加
UIApplicationShortcutItem *item1 = [[UIApplicationShortcutItem alloc] initWithType:@"dynamic1" localizedTitle:@"快捷标签一" localizedSubtitle:@"sub1" icon:[UIApplicationShortcutIcon iconWithType:UIApplicationShortcutIconTypeLocation] userInfo:nil];
UIApplicationShortcutItem *item2 = [[UIApplicationShortcutItem alloc] initWithType:@"dynamic2" localizedTitle:@"快捷标签二" localizedSubtitle:@"sub2" icon:[UIApplicationShortcutIcon iconWithType:UIApplicationShortcutIconTypePause] userInfo:nil];
[[UIApplication sharedApplication] setShortcutItems: @[ item1, item2 ]];
好了现在你就可以看到你的app长按已经会弹出快捷标签列表了。当然你也可以用另一种方式去实现该功能,在infoplist里面添加,具体如下,title和type是必须的,其他一些可选的大家自己添加..
第三步
就是点击标签进入app做相应的操作,在AppDelegate.m添加一个代理方法
- (void)application:(UIApplication *)application performActionForShortcutItem:(UIApplicationShortcutItem *)shortcutItem completionHandler:(void (^)(BOOL))completionHandler{
if ([shortcutItem.localizedTitle isEqual: @"发布作品"]) {//判断对应标签做什么操作
//这里写对应的操作就行了
}else
{
return;
}
}
好了大功告成,第一个3D Touch的功能已经实现了,接下去关于3D Touch还有更多的应用场景,后续一偏偏的介绍