问题标签 [swift5.2]
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.2 函数构建器中使用 buildExpression?
我知道这是一份提案草案。我尝试实现一个简单的 DSL 来构建字符串,如下所示:
但是,编译器抱怨“'String' 不能转换为 '[String]'”。这使我相信这buildBlock
是目前实施的提案的唯一部分。(这是可以理解的,因为在 SwiftUI 中他们正在构建视图的层次结构,所以这就是他们所需要的。)
这是正确的还是我做错了什么?正确的使用方法是buildExpression
什么?
ielyamani 的回答展示了如何构建一个有效的字符串构建器,例如我在上面的示例中使用的。但是,这并不能解决实际问题。我不是想建立一个字符串生成器。我正在尝试找出函数构建器。字符串生成器只是一个示例。例如,如果我们希望有一个接受整数的字符串生成器,理论上我们可以执行以下操作:
在这种情况下,当编译器遇到 时Int
,它会调用buildExpression
然后吐出我们的组件类型,在这种情况下是[String]
。但正如 Martin R 在对此问题的评论中所说,buildExpression
目前尚未实施。
string - Swift 5:识别字符串中所有不同的子字符串
我有以下字符串:
var strOfCharToSort = "azcdczbdxaaczdbbaazdz"
但我正在尝试计算不同子字符串的数量
例如:
let countofA = strOfCharToSort.filter { $0 == "a" }.count
它有效,但我不知道我正在加载的字符串中有哪些子字符串
我可以对字符串进行排序:
strOfCharToSort = String(strOfCharToSort.sorted()) \\ result: aaaaabbbcccddddxzzzzz
但是我对伙计们的问题是,如果找到不同的子字符串,有一种方法可以拆分字符串吗?
我真的很感谢你的帮助。
swift - 如何解决 CoreML - 验证输入失败 - 形状不在允许的形状的枚举集中
试图将机器学习集成到语音聊天应用程序中。目前,用户可以说,做两件事 - 根据语音输入接受或拒绝(使用 Apple Speech to Text API 转换为文本)要接受,输入可以是接受、好的、确认等,要拒绝,输入可以是拒绝,不,不,我不同意等。
我有一个使用 Keras 构建的模型,并从已集成到我的应用程序中的 Tensorflow 模型格式转换为 mlmodel。
该模型采用 MultiArray 输入并提供 Array 输出。
一个 JSON 文件用于训练,它具有意图的参数(例如 - 'Accept' 意图将具有 'accept'、'okay'、'confirm' 作为参数)。考虑到所有参数中唯一的小写单词,创建一个词袋,这个大小用于从传递给预测方法的输入字符串创建 MLMultiArray,如
让预测=尝试!模型.预测(输入 1:mlMultiArray)
这给出了 [(0 到 1), (0 到 1)] 的输出,其中索引 0 处的元素表示接受意图,索引 1 处的元素表示拒绝意图的可能性。
如果 json 文件的参数数量较少,这可以正常工作。例如,当词袋(所有参数中没有唯一词)有 17 个元素时,程序运行良好。但是,当我添加更多参数并且词袋现在有 36 个元素时,我收到一个错误 Fatal error: 'try!' 表达式意外引发错误:错误域 = com.apple.CoreML 代码 = 0“形状 (36) 不在允许形状的枚举集中” UserInfo={NSLocalizedDescription=形状 (36) 不在允许形状的枚举集中}:
使用https://developer.apple.com/documentation/coreml/mlmultiarray/2879232-init这个方法来初始化 ML MultiArray
jwt - Swift:如何将 Base64Url 解码为 JWT 之类的 json 对象
我有以下 JWT 编码有效负载:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJUaXRsZSI6Ik5pY2UiLCJuYW1lIjoiSmltbXkiLCJhZ2UiOjU1fQ.DSdqRFRPM4Hep704s3cvWkpH5FFpnIc82uVUswHbaz4
但是我还没有找到像JWT那样解码这个字符串的方法。
你们中的任何人都知道快速解码此有效负载的方法吗?
我会非常感谢你的帮助。
xctest - XCTest:协议变量的初始化显示错误无法构造,因为它没有可访问的初始化程序
我需要访问协议,但出现以下错误:
这是我的实现:
在这条线上self.myProtocol = MyProtocol()
是我得到错误的地方。
我对你们的问题是如何初始化 XCTest 类中的变量
我真的很感谢你的帮助。
swift - 我可以在 Swift UI 中使用什么来代替 Text View?
我想要一个具有最大字符数限制的可编辑文本字段,就像一条推文一样,但我在 SwiftUI 中没有找到解决方案。有没有人找到解决这个问题的方法?
ios - 观察 SwiftUI TextField 上的变化
我正在玩 Swift UI。我创建了一个包含所有我想要的元素的表格视图(一个列表)。当在键盘上按 enter 时,TextField 更改也正在工作。很高兴建立如此快速的表格视图;)。
但现在我想跟踪文本字段上的每一个变化。每次用户输入另一个文本时,我想发送一个触发搜索的请求。
这怎么能在我的代码中完成?我还在这里阅读了此文档https://developer.apple.com/documentation/combine/receiving_and_handling_events_with_combine
我现在不知道如何在我的结构中使用它。
此处建议的解决方案TextField changes in SwiftUI does not work (anymore)
我会感谢您与我分享的每一个提示和每一个想法。我正在寻找几个小时的解决方案:(。
我的代码如下所示: