添加3Dtouch功能其实很简单

自从phone6s开始使用3Dtouch功能,有些公司的项目就要求加入这个功能。下面就和小伙伴们简单聊一下3Dtouch的快速集成。

1.首先你需要在你的appdelegate方法里面创建快捷项(UIApplicationShortcutItem)

  创建UIApplicationShortcutItem的方法有两种:

1.在info.plist中添加 UIApplicationShortcutItems 下面添加

2.第二种方法就是就是直接在appdelegate里面使用代码创建

第一种创建方式:

第二种代码:

UIApplicationShortcutIcon *icon = [UIApplicationShortcutIcon iconWithType:UIApplicationShortcutIconTypeAlarm];

UIApplicationShortcutItem *item = [[UIApplicationShortcutItem alloc] initWithType:@"shortcutTypeTwo" localizedTitle:@"two" localizedSubtitle:nil icon:icon userInfo:nil];


2.快捷项创建好了之后下面就需要实现3Dtouch的执行方法了:代码示例

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

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

//        detailVC.navTitle = @"one";

} else if ([shortcutItem.type isEqualToString:@"shortcutTypeTwo"]) {

//        detailVC.navTitle = @"two";

}

}

轻松两步app图标上的3Dtouch功能就ok了。页面上的3Dtouch功能只要页面服从(UIViewControllerPreviewingDelegate)并执行这两个代理方法就行。太简单这里不做累述了

实现代理的方法:

- (UIViewController *)previewingContext:(id)previewingContext viewControllerForLocation:(CGPoint)location ;

- (void)previewingContext:(id)previewingContext commitViewController:(UIViewController *)viewControllerToCommit ;

下面是代码dome集成代码地址,若果对你有用的话请给颗星星github.com/TurnMoment/3Dtouch-dome/tree/master/3DTouch-功能集成

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容