一、shortcut系统版本支持
shortcut是在iOS9推出的app快捷入口,基于长按app图标弹出快捷入口列表,可以自定义图标和文本,以及跳转方法。
二、shortcut实现
创建图标
// icons with my own images,icon size 35*35
UIApplicationShortcutIcon *icon1 = [UIApplicationShortcutIcon iconWithTemplateImageName:@"icon1"];
创建标识和方法名
// create several (dynamic) shortcut items
UIMutableApplicationShortcutItem *item1 = [[UIMutableApplicationShortcutItem alloc] initWithType:@"标识" localizedTitle:@"标题名" localizedSubtitle:@"" icon:icon1 userInfo:nil];
将定义好shortcut 填入容器中
[UIApplication sharedApplication].shortcutItems =@[item1];
触发shortcut的代理方法
- (void)application:(UIApplication *)application performActionForShortcutItem:(UIApplicationShortcutItem *)shortcutItem completionHandler:(void (^)(BOOL))completionHandler {
// react to shortcut item selections
NSLog(@"A shortcut item was pressed. It was %@.", shortcutItem.localizedTitle);
三、shortcut在不同场景下的场景优化
在rootVC 也就是在TabbarVC中添加通知,从rootvc接收通知的时候 加一个延时然后跳转到目标页面。如何设置延时秒是,那就得设置一个全局变量来显示app查是否从后台到前台的场景以及app重新启动的时候场景,app重新启动的话,延时要久一些,因为某些业务模块需要数据预加载才能跳转到相关页面。
场景一:app在后台
场景二:app未启动