IBInspectable & watchkit

IBInspectable & watchkit

我可以在 watchKit 上使用 IBInspectable 吗? 当我将一个字符串标记为 IBInspectable 时,我可以在相关的 watchKit App 故事板中看到并设置它,但是当我设置它时,它实际上什么也没做。

根据我的经验,您可以将属性标记为 IBInspectable,并且 属性 将显示在界面生成器的检查器面板中。但是,正如您所指出的,这些值似乎并未由 WatchKit 填充。

你不能,因为对于 WatchKit 它们是 Interface Objects 而不是 Views。 Apple 故意对它们使用不同的术语,因为它们是根本不同的东西。

接口对象代理对象到实际手表应用中的视图(不是你的 WatchKit 扩展)。他们通过蓝牙通过 WatchKit 进行通信,以实际操作手表显示屏上那些实际视图的相应属性。

当你设置一个WKInterfaceLabel的文本时,它所做的只是记录你想做的改变,然后在运行循环中将改变和其他改变一起发送到手表作为一批。 Watch OS 将从这些代理对象中获取所有信息,并实际更改 Watch UILabel 上的文本。

因此,IBDesignable 和 IBInspectable 在这里不起作用。尽管它们在 Interface Builder 中以类似的方式表示,但它们确实是不同的东西。