问题标签 [swift3]

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.

0 投票
5 回答
12428 浏览

string - 如何在 swift 3.0 中连接多个可选字符串?

我正在尝试在 swift 3 中连接多个字符串:

编译时出现以下错误:

这曾经在 swift 2 中工作。我不知道为什么它不再工作了。

0 投票
2 回答
564 浏览

ios - 如何修复 Xcode 7.3 警告:`init` 已弃用:它将在 Swift 3 中删除:在序列上使用`enumerate()` 方法

从最近更新的 Xcode 7.3 开始,我开始看到这条消息。我正在使用循环中的序列,如下所示:

注释在EnumerateSequence.

0 投票
2 回答
6428 浏览

ios - 没有“+=”候选产生预期的上下文结果类型“Int”

我一直在为 Swift 3 更新我的 Swift 代码(真的很兴奋),到目前为止一切都很好。但我确实翻滚了一些我似乎无法更新的代码。

我知道我错过了一些非常简单的东西,但我就是看不到什么。

这是我在 Swift 2.2 中的内容:

当然在 Swift 3中++column被弃用了column += 1

但是,在这种情况下,它会产生错误:

没有“+=”候选产生预期的上下文结果类型“Int”

由于这行代码 ( column = column >= (numberOfColumns - 1) ? 0 : column += 1) 会产生错误,因此我尝试了以下操作:

但我得到同样的错误。

有人能指出我正确的方向吗?

0 投票
1 回答
428 浏览

arrays - Swift 2.2 和 3.0 之间的语法变化

我正在将 C 程序转换为 Swift。我有一个 64 个元素的 unsigned int 8 位数组,我可以在 Swift3 中将其编写为:

然而,Swift 2.2 需要这样:

所以,关键字不同,位置很重要,因为在 2.2 中计数必须在重复值之前,但在 3 中重复必须在计数之前。

在线文档在这些问题上相当粗略。我找不到的是关于 Swift 2.2 语法的权威文档。如果有人能指出我关于 Swift 2.2 的真相,我将不胜感激。

0 投票
1 回答
6515 浏览

swift - 设置 Alamofire 自定义目标文件名而不是使用SuggestedDownloadDestination

我的表格视图中有许多发票文件列表以及每个单元格中的许多下载按钮。当我单击其中一个时,它将下载发票文件。但是,问题是服务器响应建议的文件名是“invoice. pdf”在我下载的每个文件中。所以,我需要手动编辑文件名,然后在下载后保存到文档中。所以,如何在下载成功后手动编辑文件名并将其保存为文档中的临时 URL使用Alamofire.Request.suggestedDownloadDestination.

这是我的下载功能。

这是表格视图,它将检查下载的文件,当它点击时,显示在打开功能中。

所以,我的问题很简单。我只是不想使用那个代码

因为它使用 response.suggestedfilename。而且我想在选定的表格视图单元格数据上手动保存文件名。任何帮助?请不要介意我在我的问题中发布了一些代码,因为我希望每个人都能清楚地看到它。

0 投票
4 回答
1283 浏览

ios - NSTimer 倒计时 - updateCounter Swift 3.0 新语法?

我有一个简单的倒数计时器。还有一个显示倒计时的标签。

我将计数器减少一秒。这个函数给了我一个错误:

埃罗指出:

'--' 已弃用:它将在 Swift 3 中删除

我意识到我必须将--其转换为x -= 1(x 是变量)。我努力了

将计数器减少 1 秒,但我的计数器(timerLabel)只是空白。

请问针对我的情况,新的 Swift 语法是什么?

* 更新: *

我还添加了一个条件,即我的计时器在达到零 (0) 时停止,我之前没有这样做,我的计时器进入负数区域。我修改后的代码如下:

希望它可以帮助任何有类似情况的人;)

0 投票
1 回答
894 浏览

swift - swift 3:如何扩展 [UInt8] 以添加 getUInt32BE 功能

我正在尝试使用如下代码[UInt8]的功能进行扩展。getUInt32BE()

这是我收到的错误:

“不能用 'Range' 类型的索引下标 'Self' 类型的值”

有人可以帮我纠正这个错误吗?

提前致谢 :)

0 投票
1 回答
136 浏览

swift2 - Swift 3 的 C 风格声明

我坚持这条简单的路线,但无法将它从 Swift 2 转换为 Swift 3。

0 投票
7 回答
145807 浏览

ios - 如何使用 swift 3.0 中的 NotificationCenter 和 swift 2.0 中的 NSNotificationCenter 传递数据?

我正在socket.io我的 swift ios 应用程序中实施。

目前在几个面板上,我正在监听服务器并等待传入​​消息。我通过调用getChatMessage每个面板中的函数来做到这一点:

但是我注意到这是一种错误的方法,我需要更改它 - 现在我只想开始收听传入的消息一次,并且当任何消息到来时 - 将此消息传递给任何收听它的面板。

所以我想通过 NSNotificationCenter 传递传入的消息。到目前为止,我能够传递发生某事的信息,但不能传递数据本身。我是这样做的:

然后我有一个函数叫做:

任何时候我想称之为我都在做:

那么如何传递对象messageInfo并将其包含在被调用的函数中呢?

0 投票
1 回答
2267 浏览

ios - 如何在 Swift 中以编程方式更改 UIWebView 方向

我以编程方式创建了 UIWebView。现在我想以编程方式将其方向设置为(横向或纵向)。请谁能告诉我我该怎么做?谢谢