我知道WKInterfaceLabel没有getter方法,但是有没有另一种方法可以将标签文本与另一个字符串进行比较?如果这不是一个手表应用程序,而我正在使用UILabel,我可以这样做:
if ([self.label.text isEqualToString:someString]) {
}
正如您所说,没有受支持的方法来获取文本,但是您可能希望将辅助功能元素用作"选项"。
这个想法是这样的:
设置 self.label 文本(在代码或情节提要中)时,还要设置相应的辅助功能标签/值。 当您需要读取/更新标签文本时,只需确保改用辅助功能值即可。
self.label.text = @"foo";
self.label.accessibilityValue = @"foo";
if ([self.label.accessibilityValue isEqualToString:someString]) {
self.label.text = @"bar";
self.label.accessibilityValue = @"bar";
...
}
另外,无论如何,这就是您使用可访问性的方式,因此它是合法的。 可能还有其他方法可以完成,但这似乎是做你想做的事情的最快、最安全的方法。