首页 > 解决方案 > 在 UIView 扩展中设置辅助功能标识符

问题描述

我在 Mobile Test Automation.Previous 工作,有些元素没有任何标识符,但我需要导入标识符来测试问题。

所以我决定为 UIView 写一个扩展,因此该代码将影响所有代码,因此我不需要一一添加。

我能怎么做 ?我应该写在 init 还是 awakeFromNib 上?

提前致谢。

标签: swiftxcodeuiview

解决方案


通常,您会希望为要向可访问性系统公开的元素具有特定的可访问性标识符。

您可以直接在 Storyboards/Interface Builder 中设置它们,也可以在以编程方式实现 UI 时在视图的初始化程序中设置它们:

class MyView: UIView {
    override init(frame: CGRect) {
        super.init(frame: frame)
        self.accessibilityIdentifier = "my-custom-view"

        let label = UILabel()
        label.accessibilityIdentifier = "my-custom-label"
        self.addSubview(label)
    }
}

推荐阅读