iOS知识iOS开发iOS

添加3Dtouch功能其实很简单

2016-06-04  本文已影响1869人  欧辰_OSR

自从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-功能集成

上一篇下一篇

猜你喜欢

热点阅读