问题标签 [swift5]
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.
swift - 如何在 Swift 5 中检查字符串是否包含多个字符
我有一个失败初始化程序,它接受一个字符串,如果这个字符串包含不正确的字符(T、A、C、G)我想返回 nil:
我尝试过这样的事情,但不成功:
我不知何故被这两个contains
电话弄糊涂了,所以我不确定我的检查是否正确。
任何帮助表示赞赏。
protocols - 在 swift5 中初始化某些实例的奇怪结果?
我尝试在 Xcode10.2 中执行这些代码,将 Swift 版本配置为 Swift5,我希望获得 Person、Man 和 Women 的实例,但控制台结果是:
这让我很困惑,任何人都可以解释它。
期待你的回答,谢谢。
swift - 如何在 swift 5/ Xcode 10.2 中的 Userdefaults 中保存自定义类的对象
我想将数组 PatientList 保存在 UserDefaults 中。Patient 是一个自定义类,所以我需要将它转移到 Data 对象中,但这在 Swift 5 上不像以前那样工作。
这就是函数的样子。问题出在我初始化 encodeData 的那一行。
这就是 Swift 的建议,但是当我这样尝试时,它总是崩溃并且我没有收到错误
swift - 如何在 swift 5 中使用“Data.withUnsafeMutableBytes”
我将一个项目更新为 Swift 5,它使用以下代码在某处生成用于加密的密钥:
随着对 Swift 5 的更新,我收到以下警告:
但是我不知道如何实现它想要的东西,我发现这个建议充其量是模糊的,而且我尝试的任何东西要么无法编译,要么给出相同的警告。
这是完整的功能:
我尝试了各种写作方式,withUnsafeMutableBytes
但都无济于事。Swift 5 中上述代码的合适替代方案是什么?
swift - 从 UICollectionView 将图像名称打印到控制台
我正在使用 UICollectionView,其中有一个带有 Tap Gesture Recognizer 的 UIImage 作为我的 CollectionView 的单元格模型。我还有 57 张不同名称的图像,我想根据我点击的图像打印到控制台。
这是我的代码:
然后我有另一个 swift 文件 (PhotoCell),其中有用于标签和 imageView 的 IBOutlets。
有什么方法可以做到这一点?
谢谢。
ios - 警告:非特定平台“*”的“可用”属性中存在意外的版本号
我有这个片段代码:
由于我已经升级到swift5和xcode 10.2 ,我收到以下警告:
非特定平台“*”的“可用”属性中存在意外的版本号
并固定:
将 ':3.0' 替换为 ''
这是什么警告?它说什么?
ios - INIntent `setImage` 使 Swift 5 中的运行时崩溃
自从添加了 Siri 快捷方式后,我就使用INIntent
了对象。为此,我做了一个意图定义,它INIntent
自动生成了一个对象。
为了自定义 Siri 快捷语音记录屏幕,我添加了一个便利初始化程序。基本上是添加suggestedInvocationPhrase
顶部图标图像。
今天,我尝试将整个项目转换为 Swift 5,并且构建没有问题。(代码中没有实际的变化。)但是它在运行时崩溃并带有非常奇怪的消息。
线程 1:致命错误:无法解开关键路径类型
XXXX9SpotConditionIntentCXD
它指出了setImage(inImage, forParameterNamed: \.spotName)
.
我刚刚发现setImage(,forParameterNamed)
文档中不存在。
https://developer.apple.com/documentation/sirikit/inintent
好像我需要使用func keyImage() -> INImage?
iOS 12 中添加的。
但我不知道为什么它在 Swift 4.X 中有效,并且找不到任何弃用文档。有人知道这个问题吗?
ios - 使用 Swift 5.0 编译的模块不能被 Swift 4.2.1 编译器导入
与此类似的问题还有很多,但他们大多是在使用 cocoapods/carthage 的背景下谈论这个的。我没有使用任何一个,并且手动导入了我所有的框架。
我正在使用 Xcode 10.1。我只是将我的一个框架更新到他们的最新版本(我们需要一个仅在此版本上可用的功能),现在收到此错误消息。我也有 Xcode 10.2,但该项目已经在 Swift 4.2.1 中编译了 3 个其他框架,当尝试使用 Xcode 10.2 构建时,这些框架会引发类似的错误(使用 swift 4.2.1 编译的模块不能被 swift 5.0 导入)。
这个问题的大多数答案都围绕着将每个目标的 Swift 语言版本设置为 4.2.1。但是,由于我没有使用可可豆荚,我在 Xcode 中看不到任何选项来更改这个单独框架的 swift 语言版本。有任何想法吗?谢谢