gpt4 book ai didi

javascript - 无法获取 UIAStaticText 的值?

转载 作者:技术小花猫 更新时间:2023-10-29 10:20:29 24 4
gpt4 key购买 nike

我正在尝试访问 UIAStaticText( objective-c 代码中的 UILabel)JavaScript 对象的 value()。我可以使用 setValue() 很好地设置该值,并且我可以确认模拟器更新了文本,但是当我尝试获取该值时,我只得到 null

text.setValue("new text");

在模拟器中将标签更新为“新文本”。

text.value()

在我设置值后仍然返回 null

我在这里做错了什么?

最佳答案

看起来问题的根源在于 UILabel 返回 accessibilityLabelaccessibilityValue 属性,而不是 UILabel文本,因为它应该。为了解决这个问题,我覆盖了自定义 UILabel 类别中的 accessibilityValue 属性。

@interface UILabel (MyAccessibility)
@property(nonatomic, copy) NSString *accessibilityValue;
@end


@implementation UILabel (MyAccessibility)

@dynamic accessibilityValue;

-(NSString *)accessibilityValue {
// Here we force UIKit to return Label value, not the accessibility label
return self.text;
}

@end

除了这个小技巧之外,我总是尝试更喜欢可访问性标识符而不是可访问性标签来准备我的 UI 元素以进行自动化测试。查看 Instruments New Features User Guide 的“辅助功能标签和标识符属性”部分.

关于javascript - 无法获取 UIAStaticText 的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7688311/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com