在iPhone 6S或iPhone 6S Plus模拟器上模拟力触摸/ 3D触摸

Kri*_*lci 98 ios ios-simulator xcode7

我试图在iPhone 6S或iPhone 6S Plus模拟器上使用Xcode 7 GM模拟力触摸.特别是,我试图模拟实施应用程序快捷方式的测试应用程序图标上的力触摸.

让我知道如果有一个模拟这个的解决方案,我尝试了Watch模拟器用来模拟力触摸的长按,因为iPhone将其捕获为长按手势,所以无效.

更新:我从Apple下载了ViewControllerPreview示例代码.运行他们的示例应用程序我发现模拟器虽然是iPhone 6s,但不支持3D /强制触摸功能.如果我要使用带有强制触摸功能的触控板的macbook,我仍然不确定它是否支持该功能.

在此输入图像描述

编辑:使用具有强制触控触控板的macbook的人是否可以尝试使用触控板上的力触摸来模拟iPhone 6s或6s Plus模拟器上的3D触控?我的理论是,您可以使用新MacBook上的强制触控触控板来模拟新iPhone模拟器上的3D触控.如果您尝试,请添加注释,注明结果,我可以更新帖子.

EDIT2:似乎Force Touch触控板对新型号Macbook专业版没有帮助.

kay*_*anx 74

在这里说!在页面的底部....

发展环境

Xcode 7支持3D Touch开发.Xcode的所有调试功能都可用于实现新功能.

请记住以下几点:

使用Xcode 7.0,您必须在支持3D Touch的设备上进行开发.Xcode 7.0中的模拟器不支持3D Touch.

使用Xcode 7.0,您必须在代码中实现peek和pop视图控制器.Xcode 7.0中的Interface Builder不为配置3D Touch的视图控制器或转换提供图形支持.

确保在启用和禁用3D Touch的情况下测试您的应用,确保所有用户都可以使用所有功能.在3D Touch设备上,您可以在设置>常规>辅助功能> 3D Touch中禁用3D Touch

所以很遗憾看起来我们需要在实际的设备上完成它.:-(

编辑.....

从Xcode 7.3开始,如果你的MacBook的触控板支持强制触摸,有一种方法可以做到这一点.见@iPrabu的回答.

  • 链接页面现在说Xcode 7.1不支持3D Touch. (2认同)
  • 作为QA开发者说...这太糟糕了. (2认同)

Nic*_*s S 64

对于那些正在开发快速操作(应用程序快捷方式)的人,您可以使用此脚本,使您能够在模拟器上模拟对应用程序的深度按压.

https://github.com/DeskConnect/SBShortcutMenuSimulator

这是一个截图: 在此输入图像描述

对于那些正在考虑如何在第一个地方添加动作的人来说,有两个选项,静态和动态.您只能设置4个选项,它将首先显示所有静态选项,如果有空格,则显示动态选项.

以下是添加静态快捷方式的方法.它非常简单,只需在主要部分添加一些键即可Info.plist

在这个例子中,我将添加两个静态选项,一个带有Default Search图标,另一个带有来自资产目录的自定义图标.

<key>UIApplicationShortcutItems</key>
<array>
    <dict>
        <key>UIApplicationShortcutItemTitle</key>
        <string>Add Event (with custom icon)</string>
        <key>UIApplicationShortcutItemType</key>
        <string>com.reverse.appname.addevent</string>
        <key>UIApplicationShortcutItemIconFile</key>
        <string>custom-icon-from-asset-catalog</string>
        <key>UIApplicationShortcutItemSubtitle</key>
        <string>Here you can add some text below the option</string>
    </dict>
    <dict>
        <key>UIApplicationShortcutItemTitle</key>
        <string>Search Event (with default icon)</string>
        <key>UIApplicationShortcutItemType</key>
        <string>com.reverse.appname.searchevents</string>
        <key>UIApplicationShortcutItemIconType</key>
        <string>UIApplicationShortcutIconTypeSearch</string>
        <key>UIApplicationShortcutItemSubtitle</key>
        <string>Here you can add some text below the option</string>
    </dict>
</array>
Run Code Online (Sandbox Code Playgroud)


iPr*_*abu 42

使用Xcode 7.3,您可以在模拟器中测试3D触摸功能,但只有一个约束.(Xcode7.3发行说明参考)

您正在开发的机器(带触控板的macbook/mac)应该具有3D触控功能.

您可以在iOS模拟器硬件菜单下找到它.

来自Pavel Alexeev的评论:请务必在系统偏好设置→触控板中启用"强制点击和触觉反馈"

在此输入图像描述

  • 搜索了几分钟,最后意识到我正在模拟使用iPhone 6而不是6s,这就是为什么按钮对我来说是灰色的 (8认同)
  • 务必在系统偏好设置→触控板中启用"强制点击和触觉反馈" (5认同)

Jer*_*oia 9

iOS中的压力(例如:Peek&Pop)不会通过Xcode 7.0或Xcode 7.1 Beta的模拟器暴露出来.压力触摸选项仅适用于那些版本的Simulator中的watchOS设备.如果您有Xcode 7.1测试版,您会注意到菜单选项实际上已被禁用.

使用Xcode 7.3和iOS 9.3及更高版本的模拟器运行时,您可以使用强制触摸触控板测试查看/弹出功能.


小智 9

您可以在模拟器中启用3D Touch.感谢这个图书馆.

  • 添加后使用命令,控制和移位键的组合可以启用3D Touch.

  • 不要忘记仅在Debug环境中添加库.从发布环境中排除它.