[英]Swift error: Cannot call value of non-function type “SKSpriteNode”
[英]R.Swift - Cannot call value of non-function type StringResource
任何有使用 R.Swift 经验的人可以提供帮助吗? 我正在尝试合并我们项目中使用大量R.string.localizable
的代码,这样它们的出现就不会散布在整个代码中,并且字符串(和图像)不需要一次又一次地重新实例化。 为此,我想添加静态惰性结构,如下所示:
private struct Text
{
static let text1 = R.string.localizable.text1()
static let text2 = R.string.localizable.text2()
static let text3 = R.string.localizable.text3()
static let text4 = R.string.localizable.text4
}
这适用于简单的字符串,但是当任何这些字符串资源需要参数时就会出现问题,例如text4
因此被声明为String Resource
而不是String
:
R.generated.swift:
static let text4 = Rswift.StringResource(key: "some.username", tableName: "Localizable", bundle: R.hostingBundle, locales: ["en", "ja"], comment: nil)
当需要text4
并且我尝试通过我的 Text 结构使用它时,我收到错误消息:
_userNameLabel?.text = Text.text4(userName, String.Empty)
错误: Cannot call value of non-function type StringResource
有没有办法使这项工作?
您可以使用
static func text4(_ value: Int) -> String {
R.string.localizable.text4(value)
}
并调用Text.text4(10)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.