在 Watchkit 目标中使用 Swift 创建数据 Class
Make a Data Class with Swift in Watchkit Target
由于在 WatchKit 中无法简单地使用 sharedApplication() 方法,因此在 WatchKit 中不再可以使用 AppDelegate 作为存储我所有 interfaces/views 数据的方法。在 swift 中是否有其他方法可以为 WatchKit 应用程序执行此操作?我试过像这样制作一个单例 class:
import Foundation
import UIKit
class data: NSObject {
class var sharedInstance : data {
struct Example {
static let instance = data()
}
return Example.instance
}
var value:Int = 0
var increment:Int = 1
}
(此代码来自另一个 Whosebug post,我只是忘记了 link。)然后我尝试通过调用 data.value 来访问整数 "value"接口控制器,但出现错误 'data.Type' 没有名为 'value' 的成员。我该如何解决这个错误?或者有更好的方法来实现我想要实现的目标吗?
谢谢
代码 data.value
试图访问 class data
上名为 value
的 class 变量或方法。由于不存在这样的变量或方法,您会收到错误消息。
在您的定义中,value
被定义为 class data
上的 属性,因此要使用它,您需要 data
的有效实例.您的 sharedInstance
方法提供了实例。
此外,Swift 中的约定是将 class 名称大写,因此我建议使用 Data
。
由于在 WatchKit 中无法简单地使用 sharedApplication() 方法,因此在 WatchKit 中不再可以使用 AppDelegate 作为存储我所有 interfaces/views 数据的方法。在 swift 中是否有其他方法可以为 WatchKit 应用程序执行此操作?我试过像这样制作一个单例 class:
import Foundation
import UIKit
class data: NSObject {
class var sharedInstance : data {
struct Example {
static let instance = data()
}
return Example.instance
}
var value:Int = 0
var increment:Int = 1
}
(此代码来自另一个 Whosebug post,我只是忘记了 link。)然后我尝试通过调用 data.value 来访问整数 "value"接口控制器,但出现错误 'data.Type' 没有名为 'value' 的成员。我该如何解决这个错误?或者有更好的方法来实现我想要实现的目标吗?
谢谢
代码 data.value
试图访问 class data
上名为 value
的 class 变量或方法。由于不存在这样的变量或方法,您会收到错误消息。
在您的定义中,value
被定义为 class data
上的 属性,因此要使用它,您需要 data
的有效实例.您的 sharedInstance
方法提供了实例。
此外,Swift 中的约定是将 class 名称大写,因此我建议使用 Data
。