gpt4 book ai didi

ios - 3D触控能力检查问题-Swift

转载 作者:行者123 更新时间:2023-12-01 16:09:19 28 4
gpt4 key购买 nike

奇怪的问题,我正在使用标准检查来查看设备是否具有3D Touch。它包装有iOS9检查,通过但未通过我的iPhone 6S上的.Available if statement,iPhone 6S运行iOS9.1并在“设置”中启用了3D Touch。

if #available(iOS 9.0, *) {
if traitCollection.forceTouchCapability == .Available {
registerForPreviewingWithDelegate(self, sourceView: view)
constantChange = cstInfoBar.constant + 20
}
}

我已经设置了一个断点,并且收到以下信息:
(lldb) po traitCollection.forceTouchCapability
error: <EXPR>:1:17: error: 'forceTouchCapability' is only available on iOS 9.0 or newer
traitCollection.forceTouchCapability
^
<EXPR>:1:17: note: add 'if #available' version check
traitCollection.forceTouchCapability
^
<EXPR>:1:17: note: add @available attribute to enclosing instance method
traitCollection.forceTouchCapability
^
<EXPR>:1:17: note: add @available attribute to enclosing extension
traitCollection.forceTouchCapability
^
<EXPR>:9:9: warning: initialization of variable '$__lldb_error_result' was never used; consider replacing with assignment to '_' or removing it
var $__lldb_error_result = __lldb_tmp_error
~~~~^~~~~~~~~~~~~~~~~~~~
registerForPreviewingWithDelegate(self, sourceView: view)if statement之外工作,但不是实现的好选择!

进一步调查

我在MainViewController中测试了代码,效果很好。这是一种奇怪的情况,目前我已经找到了解决方法。

最佳答案

我遇到了同样的问题:我在viewDidLoad中进行了此检查,这是在对象具有traitCollection信息之前。延迟检查和逻辑,直到viewDidLayoutSubviews对我有用。

关于ios - 3D触控能力检查问题-Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33703335/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com