问题标签 [3dtouch]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 快速操作 (3D Touch) 后的启动周期
当您在主页上用力按下应用程序图标并选择其快速操作之一时,您有两个选项:
1. 应用程序已经在运行(在后台)
在这种情况下,快速操作由performActionForShortcutItem:completionHandler:
2.您的应用程序正在启动
在这种情况下,调用 did/willFinishLaunching 然后performActionForShortcutItem:completionHandler:
我在一篇文章中读到,如果应用程序由快速操作启动,则必须检查 did/willFinishLaunching,如果是,则在此处处理并返回 false,这样performActionForShortcutItem:completionHandler:
就不会再次调用。我想知道为什么这种方法更好?这是因为否则您的整个应用程序会启动,然后处理快速操作而不是直接处理快速操作。
ios - iOS 9 选择带有快速操作的标签栏索引,performActionForShortcutItem
我有 5 个选项卡,当用户选择某个快速操作时,我想转到一个特定的选项卡。
但是,我尝试过使用通知中心,引用主视图控制器并引用应用程序委托中的选项卡,但似乎都不起作用。tabbar.selectedIndex 方法确实被调用,但由于某些原因,使用快速操作时选项卡没有改变。
revealVC 是父级,tabVC 是revealVC 的子级,然后navVC 是tab 的子级。
同样,我尝试使用 notificationCenter 并引用 shopVC,然后调用此方法:
ios - 3D Touch(快速操作)导致 UIViewController
是一种从快速操作中打开特定视图控制器的方法。我在 App Delegate 中有以下代码来打开特定的 View Controller。我的应用程序与 snapchat 应用程序具有相同的设计,即在滚动视图中嵌入了不同的视图控制器,我想针对特定的视图控制器,例如周日视图控制器。
想法是呈现从快速操作项中选择的第一、第二或第三项。
运行此函数的添加委托代码是:
ios - 触摸事件仅在 iOS 9 的左屏幕边缘附近延迟。如何解决?
我正在为 iOS 开发一个键盘扩展。在 iOS 9 上,除了键盘左边缘的按键外,按键会立即做出反应。那些反应大约有 0.2 秒的延迟。原因是触摸只是通过延迟传递到UIView
我的键盘的根视图。在 iOS 8 上没有这样的延迟。
我的猜测是,这种延迟是由一些应该识别打开“正在运行的应用程序屏幕”的手势的逻辑引起的。这很好,但键盘上的延迟是不可接受的。有什么办法可以毫不拖延地获得这些事件吗?也许只是delaysTouchesBegan
设置false
一些UIGestureRecognizer
?
objective-c - 查明 Mac 是否支持 Force Touch
是否可以通过内置触控板(如新款 MacBook)或蓝牙设备(如 Magic Trackpad 2)来确定 Mac 是否支持 Force Touch?
如果 Mac 支持 Force Touch,我想提供特定于 Force Touch 的首选项,但如果 Force Touch 不可用,则不显示(或禁用)这些首选项。
在分隔符之后的部分,您可以在此处链接的图片中看到我想到的选项。(抱歉,嵌入图片本身不起作用)。
因此,不显示首选项不会限制没有强制触摸的用户,它只会让拥有它的用户配置它应该如何工作,而这些设置对没有它的用户来说毫无用处。
有没有办法做到这一点?
谢谢你和亲切的问候,马特
编辑:它在Objective-C中。
ios - 快速检查是否可以使用 3D Touch
在我的应用程序中,我将显示设置,如果设备可以 3D Touch,这些设置应该是可见的。目前我检查,如果设备有 ios9.
问题是,例如 iPhone 6 有 iOS 9 但没有 3D Touch。如何快速检查 3D Touch 的可能性?
我找到了这篇文章,但没有快速的解决方案: 检查 iOS9 设备上是否支持和启用 3D 触摸
还有一个问题。现在我想检查 iOS 9 和 3D Touch 是否可用。我试试这个:
但我总是得到这个错误:
'if' 条件后的预期'{'
ios - 3D 触控功能检查问题 - Swift
奇怪的问题,我正在使用标准检查来查看设备是否具有 3D Touch。.Available
if statement
它包含在运行 iOS9.1 并在“设置”中启用 3D Touch 的iOS9 检查,该检查正在通过,但未通过。
我设置了一个断点,我收到以下信息:
registerForPreviewingWithDelegate(self, sourceView: view)
之外的工作,但if statement
不是实施的好选择!
进一步调查
我在 MainViewController 中测试了代码,它运行良好。这是一个奇怪的情况,我暂时找到了解决方法。
ios - 动态更改 UIApplicationShortcutItem 上的文本
我在 rootViewController 中实现了两个动态“主屏幕快速操作”作为 UIApplicationShortcutItem - 就像 Apple 在他们的文档中建议的那样。这就像一个魅力。
我的问题是,我想在不进入应用程序的情况下更改标题和字幕的文本,就像应用程序徽章一样。具体来说,我希望我的字幕文本代表数字
[UIApplication sharedApplication].applicationIconBadgeNumber
。
问题是,我的字幕仅在用户进入应用程序时更新,而不是像徽章一样自动更新。如何推送更新的字符串并刷新我的字幕?这是可能吗?
提前致谢。
ios - iPhone 6s - iOS 9.1 在 [UICollectionViewController previewingContext:viewControllerForLocation:] 上崩溃
这是一个非常愚蠢的堆栈跟踪,因为环顾四周,我唯一能想到的是 iPhone 6s 用户正在尝试 3D 触摸某些东西,以及我的手势识别器(某处,我不知道是哪个,因为它没有'不告诉我哪条线甚至哪个控制器)不知道如何处理它?我没有添加任何 3D 触摸手势识别器,也没有在任何地方实现 3D 触摸交互。
我在这个版本中以 iOS 8 为目标,不幸的是我没有 iPhone 6s 可以测试,所以无法真正重现它。
关于可能导致它的原因,如何缩小重现的位置/内容以及如何重现以及如何处理异常的想法?