iOS 3D Touch使用<一、 Home Screen Quick Actions使用>

原创 2016年02月25日 21:57:47

iOS 在6s/6s plus中加入了的3D Touch技术,该技术的功能主要有3个:

1、Home Screen Quick Actions :主屏幕上按icon图标出现快捷选项,然后选择对应选项则会快速进入设定好的页面中

2、提供peek(预览)和pop(详阅、敲击)功能 :启动app之后,可以设置某些页面支持预览和快速回复功能,例如微信点击和某个人的对话就能实现预览

3、iOS9 之后给UITouch对象加入了 压力大小监测的属性force


先讲第一个功能:

效果图:


有两种发式一种是静态方式、一种是动态方式

静态方式就是在plist文件中配置好,当你的app安装之后就可以使用这个功能

动态方式就是用代码创建,所有必需启动app一次之后才能使用这个功能

由于静态方式方便就直讲静态方式:

在plist文件中配置一些快捷项属性

<array>

<dict>

<key>UIApplicationShortcutItemTitle</key>

<string>智能开门</string>

<key>UIApplicationShortcutItemUserInfo</key>

<dict>

<key>key1</key>

<string>value1</string>

</dict>

<key>UIApplicationShortcutItemType</key>

<string>openDoor</string>

            <key>UIApplicationShortcutItemIconFile</key>

            <string>智能开门@2x.png</string>

</dict>

<dict>

<key>UIApplicationShortcutItemTitle</key>

<string>我要报修</string>

<key>UIApplicationShortcutItemUserInfo</key>

<dict>

<key>key2</key>

<string>value2</string>

</dict>

<key>UIApplicationShortcutItemType</key>

<string>repair</string>

<key>UIApplicationShortcutItemIconFile</key>

<string>在线报修@2x.png</string>

</dict>

<dict>

<key>UIApplicationShortcutItemTitle</key>

<string>访客邀请</string>

<key>UIApplicationShortcutItemUserInfo</key>

<dict>

<key>key3</key>

<string>value3</string>

</dict>

<key>UIApplicationShortcutItemType</key>

<string>invite</string>

<key>UIApplicationShortcutItemIconFile</key>

<string>访客邀请@2x.png</string>

</dict>

<dict>

<key>UIApplicationShortcutItemTitle</key>

<string>社区服务</string>

<key>UIApplicationShortcutItemUserInfo</key>

<dict>

<key>key4</key>

<string>value4</string>

</dict>

<key>UIApplicationShortcutItemType</key>

<string>communityService</string>

<key>UIApplicationShortcutItemIconFile</key>

<string>社区服务@2x.png</string>

</dict>

</array>



UIApplicationShortcutItemType :当点击Icon图标的时候,弹出的选项中每一行设置一个唯一的ID 然后在app里面通过该id判断来确定选择了哪一行(必需有)。

UIApplicationShortcutItemTitle 点击之后弹出的选项中的主标题(必需有)

UIApplicationShortcutItemSubtitle 选项中的副标题。

UIApplicationShortcutItemIconType 利用系统库提供的图标 (UIApplicationShortcutIcon 里面的)。

UIApplicationShortcutItemIconFile 自定义图标,该图标是正方形的、单色的、像素点为35x35,如果这里设置了自定义的图标,设置的UIApplicationShortcutItemIconType属性显示系统图标将不会显示。

UIApplicationShortcutItemUserInfo :是一个字典 用来保存app的版本信息


plist文件配置好之后 上面的效果图就做出来了。
怎么实现点击的那一行对于的功能?
说明:在点击Icon图标快捷项都时候,有两种情况,一种是app没启动,一种是app启动之后在后台挂起的。
第一种情况app没启动,通过快捷项启动app并跳转到指定的页面

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 

{

UIApplicationShortcutItem *shortItem = [launchOptions objectForKey:UIApplicationLaunchOptionsShortcutItemKey];

    if (shortItem != nil) {

// _options是个字典主要是用来传递快捷项的type 然后在页面启动完成了之后,我是在

-(void)viewDidAppear:(BOOL)animated方法里面进行页面跳转的。

        _options = launchOptions;

        return NO;

    }

    else

    {

        //非快捷项启动

        _options = nil;

        return YES;

    }

}

注意:didFinishLaunchingWithOptions 这个方法要返回NO 避免重复逻辑操作。


第二中情况:app处于后台挂起状态,在代理方法

-(void)application:(UIApplication *)application performActionForShortcutItem:(UIApplicationShortcutItem *)shortcutItem completionHandler:(void (^)(BOOL))completionHandler


在这个方法里面发送通知就可以进行页面跳转。


注意:在iOS 9中,一个应用最多能展示四个主屏快速选项。在这个限制下,系统首先展示静态快速选项,以plist菜单中的第一个为首。如果你的静态选项不够四个,并且你也定义了动态快速选项,那么会展示一个或多个动态快速选项。

两种快速选项都可以显示最多两行文本和一个可选的图标。系统会格式化文本,排列包装它,并且适当的添加省略号。





版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/moxi_wang/article/details/50723496

iOS ----新特性 3DTouch 开发教程全解(含源码)

本文主要讲解3DTouch各种场景下的开发方法,开发主屏幕应用icon上的快捷选项标签(Home Screen Quick Actions),静态设置UIApplicationShortcutItem...
  • iotjin
  • iotjin
  • 2016-04-25 21:53:25
  • 570

iOS9 3DTouch 之 Home Screen Quick Actions

测试环境: Xcode8.1 一、前言iOS9 已经过去一年了,3D Touch也在项目中实战过,但一直没有总结一下,现在新的项目也用到了3D Touch, 网上找了找资料,很杂,打算自己总结一下...
  • sinat_34857341
  • sinat_34857341
  • 2016-12-12 00:33:30
  • 156

浅谈3D Touch(1) -- Home screen quick action

1. 背景: 随着iOS9 和 iPhone 6s的普及,苹果官方提供的3D Touch将带给我们更好玩,更便捷的操作习惯,桌面快捷菜单可谓是3D Touch功能中最实用的一个,有了它,用户不再需要...
  • jianandjan
  • jianandjan
  • 2015-11-30 13:17:55
  • 614

[绍棠] 通过主屏幕的应用Icon,用3D Touch呼出一个菜单 (Home Screen Quick Actions)

通过主屏幕的应用Icon,我们可以用3D Touch呼出一个菜单,进行快速定位应用功能模块相关功能的开发,。如微信、京东的App,本文也将重点介绍这项开发技术。  微信的快速入口 ...
  • happyshaotang2
  • happyshaotang2
  • 2016-11-15 09:11:46
  • 378

Home Screen Quick Actions

2、Home Screen Quick Actions 通过主屏幕的应用Icon,我们可以用3D Touch呼出一个菜单,进行快速定位应用功能模块相关功能的开发,。如微信、京东的App,本文也将...
  • vickyjfr
  • vickyjfr
  • 2016-03-03 11:27:23
  • 838

ios 3d touch

  • 2018年01月18日 11:44
  • 2.08MB
  • 下载

iOS 3DTouch 在现实当中的应用

本文主要讲解3DTouch各种场景下的开发方法,开发主屏幕应用icon上的快捷选项标签(Home Screen Quick Actions),静态设置UIApplicationShortcutItem...
  • appdeveloperxg
  • appdeveloperxg
  • 2016-12-12 17:46:17
  • 1000

iOS开发之3DTouch集成

静态添加入口标签在info.plist中添加如图所示 各项都代表的意思首先是UIApplicationShortcutItems,他是一个数组类型,数组中的每一个元素表示一个入口标签。然后是Item...
  • sinat_30162391
  • sinat_30162391
  • 2016-04-08 13:51:34
  • 1793

在xcode模拟器上运行3Dtouch

第一步, git clone https://github.com/DeskConnect/SBShortcutMenuSimulator.git cd SBSho...
  • hurosezhang
  • hurosezhang
  • 2016-08-15 15:52:17
  • 1712

iOS 3Dtouch 开发demo

  • 2015年11月30日 11:30
  • 63KB
  • 下载
收藏助手
不良信息举报
您举报文章:iOS 3D Touch使用<一、 Home Screen Quick Actions使用>
举报原因:
原因补充:

(最多只允许输入30个字)