zoukankan      html  css  js  c++  java
  • iOS 3DTouch应用

    概述

    iOS10系统登录中国,在系统中对3D Touch的使用需求更频繁,所以对iOS9中便引入的3D Touch功能做一些了解是很有必要的

    在日常开发中,我们经常需要使用3D Touch中的两个功能

    1. 在主屏幕上对应用图标使用3DTouch操作

    2. 在应用程序内对某一控件使用3DTouch操作

    ShortcutItem

    概述

    ShortcutItem功能允许用户在主屏幕上对应用图标使用3DTouch操作,如果本次操作有效,则会给出几个快捷可选项允许用户进行操作

    静态添加

    在info.plist中添加UIApplicationShortcutItems关键字,以如下方式配置即可

    1598380-5e81589b26316d66.png.jpeg

    其中各个关键字释义如下:

    UIApplicationShortcutItemType: 快捷可选项的特定字符串(必填)
    UIApplicationShortcutItemTitle: 快捷可选项的标题(必填)
    UIApplicationShortcutItemSubtitle: 快捷可选项的子标题(可选)
    UIApplicationShortcutItemIconType: 快捷可选项的图标(可选)
    UIApplicationShortcutItemIconFile: 快捷可选项的自定义图标(可选)
    UIApplicationShortcutItemUserInfo: 快捷可选项的附加信息(可选)

    触发回调

    当用户通过点击快捷可选项进入应用程序会回调如下方法,我们可以在这里通过快捷可选项的type来加以区分,以便进行不同的操作

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    - (void)application:(UIApplication *)application performActionForShortcutItem:(UIApplicationShortcutItem *)shortcutItem completionHandler:(void (^)(BOOL))completionHandler
    {
       if ([shortcutItem.type isEqualToString:@"com.liupeng.search"])
       {
           // do something ...
       }
       else if ([shortcutItem.type isEqualToString:@"com.liupeng.play"])
       {
           // do something ...
       }
       // ...
    }

    注意

    在动态添加快捷可选项前,需要用判断是否支持3D Touch功能,以免在不支持的设备上运行程序导致闪退

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    if ([self respondsToSelector:@selector(traitCollection)])
    {
       if ([self.traitCollection respondsToSelector:@selector(forceTouchCapability)])
       {
           if (self.traitCollection.forceTouchCapability == UIForceTouchCapabilityAvailable)
           {
               // 支持3D Touch
           }
           else
           {
               // 不支持3D Touch
           }
       }
    }

    注: 在支持3D Touch的设备上,用户可以在程序运行期间通过设置 -> 通用 -> 辅助功能 -> 3D Touch来关闭3D Touch功能,所以我们有必要通过重写-traitCollectionDidChange:方法随时处理

    Peek & Pop

    概述

    Peek和Pop是应用内的一种全新交互模式,当用户不断增加力量在控件上按压,会依次进入四个阶段

    http://www.cocoachina.com/ios/20161114/18071.html

  • 相关阅读:
    毕业生的商业软件开发之路 C#语言简介
    [毕业生的商业软件开发之路]第一次使用VS.NET集成开发环境
    一种应用程序命令执行架构设计
    DCWriter 电子病历文档编辑器的 电子病历功能规范对照表
    [毕业生的商业软件开发之路]积累与创新
    WEB开发人员的微软技术战略
    PureMVC(AS3)剖析:吐槽
    走在网页游戏开发的路上(九)
    [服务器开发]可伸缩系统的设计模式(译)
    回合制页游
  • 原文地址:https://www.cnblogs.com/dengchaojie/p/7997711.html
Copyright © 2011-2022 走看看