我知道WKInterfaceLabel没有getter方法,但还有另一种方法可以将标签文本与另一个字符串进行比较吗?如果这不是一个手表应用程序而我使用UILabel我可以这样做:
if ([self.label.text isEqualToString:someString]) {
}
答案 0 :(得分:6)
正如您所说,没有受支持的方式来获取文本,但您可能希望将辅助功能元素用作"选项"。
以下是这个想法:
设置self.label文本时(在代码或故事板中)也设置相应的辅助功能标签/值。当您需要阅读/更新标签文本时,请确保使用辅助功能值。
self.label.text = @"foo";
self.label.accessibilityValue = @"foo";
if ([self.label.accessibilityValue isEqualToString:someString]) {
self.label.text = @"bar";
self.label.accessibilityValue = @"bar";
...
}
另外,无论如何都要使用辅助功能,以便合法。可能还有其他方法可以实现,但这似乎是最快捷,最安全的方式。