3D Touch簡單使用

PS:只是對通過APP Icon的按壓快速進(jìn)入頁面的使用說明,無其它干貨!


在后臺模式時通過3D Touch進(jìn)入程序會執(zhí)行application:performActionForShortcutItem:completionHandler方法,干掉進(jìn)程后直接通過3D Touch不會執(zhí)行上面的方法,而在程序啟動方法application:didFinishLaunchWithOptions中執(zhí)行,參考其它Demo時沒發(fā)現(xiàn)這個問題,不知道是不是坑,先在此Mark一下.
添加shortcutItem有靜態(tài)和動態(tài)兩種設(shè)置方法,以下是用code動態(tài)添加的,因?yàn)樵趐list文件中添加很痛苦,沒代碼來的快.最后附了點(diǎn)plist文件中的設(shè)置參數(shù),有興趣的可以瞧瞧.
廢話到此結(jié)束,上代碼

代碼動態(tài)添加

- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
{
    if (application.shortcutItems.count == 0) {
        [self configShortCutItems];
    }
    //通過點(diǎn)擊3D T的shortcutItem進(jìn)入時(非后臺模式進(jìn)入),此value不為nil
    UIApplicationShortcutItem *shortItem = launchOptions[UIApplicationLaunchOptionsShortcutItemKey];
    if (shortItem) {
        //我們項(xiàng)目里此處如果不延時調(diào)用的話,某些東西加載不出來
        dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.25f * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
            [self handleShortcutItem:shortItem];
        });
        return NO;
    }
    return YES;
}

- (void)application:(UIApplication *)application performActionForShortcutItem:(UIApplicationShortcutItem *)shortcutItem completionHandler:(void (^)(BOOL))completionHandler
{
    [self handleShortcutItem:shortItem];
}

- (void)configShortCutItems
{
    if (SystemVersion() >= 9.0f) {
        UIMutableApplicationShortcutItem *item1 = [[UIMutableApplicationShortcutItem alloc] initWithType:@"1" localizedTitle:@"打開上次閱讀" localizedSubtitle:nil icon:[UIApplicationShortcutIcon iconWithTemplateImageName:@"lastRead"] userInfo:nil];
        UIMutableApplicationShortcutItem *item2 = [[UIMutableApplicationShortcutItem alloc] initWithType:@"2" localizedTitle:@"重磅限免" localizedSubtitle:nil icon:[UIApplicationShortcutIcon iconWithTemplateImageName:@"limitedFree"] userInfo:nil];
        UIMutableApplicationShortcutItem *item3 = [[UIMutableApplicationShortcutItem alloc] initWithType:@"3" localizedTitle:@"簽到" localizedSubtitle:nil icon:[UIApplicationShortcutIcon iconWithTemplateImageName:@"signIn"] userInfo:nil];
        [UIApplication sharedApplication].shortcutItems = @[item1, item2, item3];
    }
}

- (void)handleShortcutItem:(UIApplicationShortcutItem *)shortcutItem
{
    NSString *type = shortcutItem.type;
    switch (type.integerValue) {
        case 1: //打開上次閱讀
        {
            //要進(jìn)行的操作
            ...
        }
            break;
        case 2: //重磅限免
        {
            
        }
            break;
        case 3: //簽到
        {
            
        }
            break;
    }
}

info.plist靜態(tài)設(shè)置shortcutItem的方法

<key>UIApplicationShortcutItems</key>
    <array>
        <dict>
            <key>UIApplicationShortcutItemTitle</key>
            <string>標(biāo)題(顯示的標(biāo)題)</string>
            <key>UIApplicationShortcutItemType</key>
            <string>type是自己設(shè)置的字符串,比如字符串1,2...</string>
            <key>UIApplicationShortcutItemIconType</key>
            <string>UIApplicationShortcutIconTypeLocation (API中有好幾種)</string>
            <key>UIApplicationShortcutItemIconFile</key>
            <string>圖片名字</string>
            <key>UIApplicationShortcutItemUserInfo</key>
            <dict>
                <key>firstShortcutKey</key>
                <string>firstShortcutValue</string>
            </dict>
        </dict>
    </array>
QQ20160114-0@2x.png
QQ20160114-0@2x.png

Icon尺寸:

  • 35x35 (1x)
  • 70x70 (2x)
  • 105x105 (3x)

參考:
Adding 3D Touch Quick Actions
iOS9系列專題一3D Touch
3DTouchSample

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前言 關(guān)于這篇文章 由于iPhone 6S發(fā)布不到一年的時間,很多新特性、新技術(shù)還未普遍,不管是3D Touch的...
    Tangentw閱讀 4,744評論 8 18
  • 1.簡單的介紹一下3D Touch 3D Touch的觸控技術(shù),被蘋果稱為新一代多點(diǎn)觸控技術(shù)。其實(shí),就是此前在Ap...
    Camille_chen閱讀 12,373評論 19 33
  • 專著:http://www.itdecent.cn/p/3443a3b27b2d 1.簡單的介紹一下3D Touc...
    violafa閱讀 1,101評論 1 0
  • 3D Touch介紹 從iPhone 6s開始,產(chǎn)品都添加了一項(xiàng)硬件屬性,叫做3D touch。作為屏幕的一部分,...
    歪筆書生_閱讀 715評論 0 0
  • 前幾天就有爆出何潔、赫子銘離婚的新聞,隨后被一一否認(rèn)。直到昨晚,何潔深夜發(fā)博稱: 沉默,因?yàn)椴幌氤蔀樾〕蟮耐\;隱...
    洛小婭閱讀 291評論 0 1

友情鏈接更多精彩內(nèi)容