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

  • 相关阅读:
    matlab二维绘图学习摘要
    linux下有名管道进程通信
    《编写可读代码的艺术》第10章 抽取不相关的子问题
    《编写可读代码的艺术》第9章 变量可读性
    《编写可读代码的艺术》第8章 拆分超长的表达式
    《编写可读代码的艺术》第7章 简化循环和逻辑
    《编写可读代码的艺术》第6章 写出言简意赅的注释
    《编写可读代码的艺术》第5章 该写什么样的注释
    《编写可读代码的艺术》第4章 审美
    《编写可读代码的艺术》第3章 不会误解的名字
  • 原文地址:https://www.cnblogs.com/dengchaojie/p/7997711.html
Copyright © 2011-2022 走看看