zoukankan      html  css  js  c++  java
  • 3D Touch

    一、认识3D Touch
     
    1、硬件和操作系统要求
         iPhone 6s或者iPhone 6s Plus
         操作系统要求 ios9+
    2、3D Touch的交互效果
    • QuickAction
              操作:稍微用力按压应用icon按钮
              效果:跳出一系列的快捷选项。用户选择一个快捷选项后,将会启动或者加载应用。
               
     
    • Peek
      操作:轻度力量按压某个视图
      效果:此视图的周围内容会变得模糊,提示用户这个视图支持3D Touch



      操作:中度力量按压某个视图
      效果:跳出预览界面peek



       操作:手指保持在peek页面上,向上滑动
       效果:底部展示peek快速选项

        

    • Pop
              操作:在预览界面peek上重度力量按压
              效果:会完全跳转到peek所预览的那个界面
     
     
     
    二、3D Touch效果实现
     
    3D Touch共有1、QuickAction  2、peek 3、pop 4、peek快捷选项四种功能,下面就分别讲解这四种功能,每种功能的做法都区分了步骤,非常简单,简直就是傻瓜式操作。
     
    【1】QuickAction
    第一步 注册
    AppDelegate.m的
       - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
     
    代码示例:
    *)localizedTitle;
    第二步:实现AppDelegate.m中的代理方法,按不同控件做不同操作:
    代码示例:
         
    【2】peek
    第一步:遵循 UIViewControllerPreviewingDelegate协议
     
    第二步:实现UIViewControllerPreviewingDelegate代理方法
    - (nullable UIViewController *)previewingContext:(id <UIViewControllerPreviewing>)previewingContext viewControllerForLocation:(CGPoint)location
     
    1、创建预览VC
    2、创建预览内容View
    3、将预览内容View添加到预览VC上
    4、返回预览VC
     
    代码示例:
     
     
    【3】Pop
    第一步:遵循 UIViewControllerPreviewingDelegate协议
     
    第二步:实现实现UIViewControllerPreviewingDelegate代理方法
    - (void)previewingContext:(id <UIViewControllerPreviewing>)previewingContext commitViewController:(UIViewController*)viewControllerToCommit 
     
    这个代理方法可以自由定义任何功能,但一般的实现是直接跳转到peek所预览的页面上
     
    代码示例:
     
    【4】peek快速选项
    第一步:找到实现peek的代理方法所返回的ViewController类
    第二步:让peek的代理方法所返回的ViewController类遵循 UIPreviewActionItem协议
     
    第三步:实现UIPreviewActionItem的代理方法
    -(NSArray<id<UIPreviewActionItem>> *)previewActionItems
     
    这个代理方法要求返回一个UIPreviewAction数组,UIPreviewAction类中提供了两个创建UIPreviewAction实例的类方法,每个UIPreviewAction实例的点击业务都在block中实现。
     
    代码示例:
     
     
    二、3D Touch四种效果小Demo
  • 相关阅读:
    windows 程序设计自学:窗口正中显示Hello,World
    为网站图片增加延迟加载功能,提升用户体验
    线性表顺序存储
    sys.stdout sys.stderr的用法
    python 跳出嵌套循环方法
    * 与 ** 在调用函数时的作用
    twisted 学习笔记二:创建一个简单TCP客户端
    给命令行上色
    __new__ 的简单应用
    网友对twisted deferr的理解
  • 原文地址:https://www.cnblogs.com/tufei7/p/5979614.html
Copyright © 2011-2022 走看看