3DTouch功能开发

效果图
在这里插入图片描述

实操
1、选项配置,两种方法
(1)plist.info配置选项

<key>UIApplicationShortcutItems</key>
    <array>
    <dict>
    <key>UIApplicationShortcutItemType</key>
    <string>edit</string>
    <key>UIApplicationShortcutItemTitle</key>
    <string>编辑</string>
    <key>UIApplicationShortcutItemIconType</key>
    <string>UIApplicationShortcutIconTypeHome</string>
    </dict>
    <dict>
    <key>UIApplicationShortcutItemIconType</key>
    <string>UIApplicationShortcutIconTypeShare</string>
    <key>UIApplicationShortcutItemTitle</key>
    <string>分享</string>
    <key>UIApplicationShortcutItemType</key>
    <string>share</string>
    </dict>
    <dict>
    <key>UIApplicationShortcutItemIconType</key>
    <string>UIApplicationShortcutIconTypeAdd</string>
    <key>UIApplicationShortcutItemTitle</key>
    <string>添加</string>
    <key>UIApplicationShortcutItemType</key>
    <string>add</string>
    </dict>
    </array>

(2)- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions配置选项
动态添加时,可使用方法[UIApplicationShortcutIcon iconWithTemplateImageName:@"icon_map"]自定义选项图标。

//
UIApplicationShortcutItem *shoreItem1 = [[UIApplicationShortcutItem alloc] initWithType:@"search" localizedTitle:@"搜索" localizedSubtitle:nil icon:[UIApplicationShortcutIcon iconWithType:UIApplicationShortcutIconTypeSearch] userInfo:nil];
//
UIApplicationShortcutItem *shoreItem2 = [[UIApplicationShortcutItem alloc] initWithType:@"edit" localizedTitle:@"编辑" localizedSubtitle:nil icon:[UIApplicationShortcutIcon iconWithType:UIApplicationShortcutIconTypePlay] userInfo:nil];
//
 UIApplicationShortcutItem *shoreItem3 = [[UIApplicationShortcutItem alloc] initWithType:@"newTask" localizedTitle:@"新建任务" localizedSubtitle:@"新建小任务" icon:[UIApplicationShortcutIcon iconWithTemplateImageName:@"icon_map"] userInfo:nil];
//
[UIApplication sharedApplication].shortcutItems = @[shoreItem1, shoreItem2, shoreItem3];

2、交互响应事件

- (void)application:(UIApplication *)application performActionForShortcutItem:(UIApplicationShortcutItem *)shortcutItem completionHandler:(void (^)(BOOL))completionHandler {
    // 不管APP在后台还是进程被杀死,只要通过主屏快捷操作进来的,都会调用这个方法
    NSLog(@"name:%@\ntype:%@", shortcutItem.localizedTitle, shortcutItem.type);
    if ([shortcutItem.type isEqualToString:@"edit"]) {
       // 根据类型进行相关的操作
    }
}

注意:图标类型

typedef NS_ENUM(NSInteger, UIApplicationShortcutIconType) {
     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)
 } NS_ENUM_AVAILABLE_IOS(9_0) __TVOS_PROHIBITED;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

番薯大佬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值