ios - 在 Watchkit Target 中使用 Swift 创建数据类

标签 ios swift watchkit apple-watch

由于在 WatchKit 中无法简单地使用 shareApplication() 方法,因此在 WatchKit 中不再可以使用 AppDelegate 作为存储所有界面/ View 数据的方法。对于 WatchKit 应用程序,是否有另一种快速执行此操作的方法?我试过像这样制作一个单例类:

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

}

(此代码来自另一篇 StackOverflow 帖子,我只是忘记了链接。)然后,我尝试通过在界面 Controller 中调用 data.value 来访问整数“值”,但收到错误“data.Type”不有一个名为“value”的成员。我该如何修复这个错误?还是有更好的方法来实现我想要实现的目标?

谢谢

最佳答案

代码data.value尝试访问类data上名为value的类变量或方法。由于不存在这样的变量或方法,您会收到错误消息。

在您的定义中,value 被定义为 data 类的属性,因此要使用它,您需要一个 data 的有效实例。您的 sharedInstance 方法提供实例。

此外,Swift 中的约定是将类名大写,因此我建议使用 Data

关于ios - 在 Watchkit Target 中使用 Swift 创建数据类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28821447/

相关文章:

ios - 选择时会膨胀和收缩的不同单元格高度

ios - Flutter 构建 ios 失败并显示 : Error running pod install

ios - 在 Swift 3.0 SpriteKit 中设置世界边界

ios - 如何在不按下按钮的情况下在 Apple Watch 中开始和停止听写

ios - 在 C4 - c4 框架中动画形状时的工件

ios - 如何确保在 UITextfield 中输入的日期不超过特定日期?

xcode - Xcode(swift) 中的碰撞检测不起作用,我正在尝试设置玩家无法跨越的边界

iOS Swift & Parse - getDataInBackground 不工作?

ios - 在 Swift 中运行的目标成员资格的编译器条件?

ios - 我可以创建一个没有 Storyboard的 WatchKit 应用程序(完全在代码中)吗?