小编Sav*_*viz的帖子

Swift 数组移动函数的行为与您期望的不同 - 为什么?

最近 Swift 有一个名为 move for Arrays 的新方法。我们可以使用它来配合 Swiftui 列表拖放列表移动。我的挑战是我不明白它是如何独立工作的,而且苹果公司的文档对此也很少。这是我在使用这个函数时注意到的一个奇怪的行为。

var array = ["a", "b" ,"c", "d"]
print("before \(array)\n")
array = ["a", "b" ,"c", "d"]
array.move(fromOffsets: IndexSet(integer: 2), toOffset: 1)
print("after 2 -> 1 \(array)")
        
array = ["a", "b" ,"c", "d"]
array.move(fromOffsets: IndexSet(integer: 1), toOffset: 2)
print("after 1 -> 2 \(array)")

array = ["a", "b" ,"c", "d"]
array.move(fromOffsets: IndexSet(integer: 2), toOffset: 2)
print("after 2 -> 2 \(array)")
Run Code Online (Sandbox Code Playgroud)

结果是:

after 2 -> 1 ["a", "c", "b", "d"]

after 1 -> 2 ["a", …
Run Code Online (Sandbox Code Playgroud)

arrays swift swiftui

14
推荐指数
2
解决办法
2089
查看次数

是否有可能在Apple Watch OS 2上没有伴音的情况下触发触觉反馈

假设用户没有静音他们的手表声音.苹果手表应用程序是否有可能在没有伴音的情况下触发触觉反馈(即振动).

这与收到手表自动处理的通知不同.在这种情况下,我正在使用手表应用程序调用触觉反馈.

像这样:[[WKInterfaceDevice currentDevice] playHaptic:WKHapticTypeClick];

ios apple-watch watchkit haptic-feedback

6
推荐指数
1
解决办法
656
查看次数

我可以构建Adobe AIR应用程序的调试版本吗?

我正在尝试在客户端计算机上调试问题.问题是问题是一个运行时错误,关于它的位置几乎没有线索.这是一个间歇性的问题.我知道ADL允许我以调试模式运行应用程序.问题是告诉用户下载和管理ADL调用将是非常困难的.如果我能给最终用户安装和运行一个安装/可执行文件然后向我发送问题的痕迹,那将会容易得多.所以我正在寻找的是客户端能够在调试模式下运行AIR应用程序的简单步骤.下载ADL并找到应用程序的安装位置将很难与最终用户远程管理.

更新:您必须确保使用AIR 3.5和Flash 11.5,并在其他编译器设置中包含以下标志"-swf-version = 18".然后,您必须捕获答案中提到的全局错误,它将显示错误的位置.当然没有行号.只是常规名称.感谢李先生给李的答案.

apache-flex air debugging adobe

4
推荐指数
1
解决办法
2016
查看次数

如何在WatchOS 3中播放将在手表扬声器上播放的自定义声音

我已经读过,我们现在可以在watchos 3中的苹果手表上播放自定义声音.

根据苹果的声明显然有,但我没有一个例子来测试它:使用SCNAudioSource或SCNAudioPlayer实现的3D空间音频.相反,使用playAudioSource:waitForCompletion:或WatchKit声音或触觉API.在此处找到:https://developer.apple.com/library/prerelease/content/releasenotes/General/WhatsNewInwatchOS/Articles/watchOS3.html

有人可以举一个简单的例子.我没有在我的应用程序中使用SceneKit,因为我不需要它,但如果这是播放自定义声音的唯一方法,那么我想知道完成此操作所需的最少代码.最好是在目标c中,但我会把它带到任何形状.如果这也更容易,我可以使用SpriteKit.

这是我到目前为止所做的,但它不起作用:

SCNNode * audioNode = [[SCNNode alloc] init];

SCNAudioSource * audioSource = [SCNAudioSource audioSourceNamed:@"mysound.mp3"];
SCNAudioPlayer * audioPlayer = [SCNAudioPlayer audioPlayerWithSource:audioSource];  
[audioNode addAudioPlayer:audioPlayer];

SCNAction * play = [SCNAction playAudioSource:audioSource waitForCompletion:YES];
[audioNode runAction:play];
Run Code Online (Sandbox Code Playgroud)

audio sprite-kit watchos-3

4
推荐指数
2
解决办法
2063
查看次数

如何在非调试模式下获取Adobe AIR全局运行时错误的堆栈跟踪?

新版本AIR使我们能够全局捕获运行时错误并处理它们.问题是除了错误ID和错误消息和名称之外,它没有堆栈跟踪或有关错误的任何有用信息.例如,它可能告诉我发生了空指针异常,但它不会告诉我在哪里或哪个方法或任何东西.运行时的调试版本为我们提供了所有这些,但是当应用程序部署到客户时,它没有在调试版本上运行,因此没有任何有用的信息可用.我想知道这个小组是否有任何关于如何在AIR应用程序中更好地记录错误的建议,以便更好地支持产品.有什么建议?

air global stack-trace

2
推荐指数
1
解决办法
2022
查看次数

WatchKit 如何使用标识符执行特定的转场

我有一个按钮,它已经连接到 InterfaceBuilder 中以显示一个模态界面控制器。在某些情况下,我想以编程方式触发此转换,但我找不到在 Watchkit 中执行相同转场的方法。我知道您可以在 iphone/iOS 中执行此操作,但到目前为止我无法在 Watchkit 中找到它。

segue apple-watch watchkit

1
推荐指数
1
解决办法
1610
查看次数