Swift 在UIView扩展中设置辅助功能标识符

Swift 在UIView扩展中设置辅助功能标识符,swift,xcode,uiview,Swift,Xcode,Uiview,我从事移动测试自动化。以前,一些元素没有任何标识符,但我需要为测试问题导入标识符 所以我决定为UIView写一个扩展,因此代码将影响所有代码,所以我不需要逐个添加 我该怎么办?我应该写在init还是awakeFromNib上 提前感谢。通常,您需要为要向辅助功能系统公开的元素提供特定的辅助功能标识符 您可以直接在序列图像板/界面生成器中设置它们,也可以在以编程方式实现UI时在视图的初始值设定项中设置它们: class MyView: UIView { override init(fram

我从事移动测试自动化。以前,一些元素没有任何标识符,但我需要为测试问题导入标识符

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

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


提前感谢。

通常,您需要为要向辅助功能系统公开的元素提供特定的辅助功能标识符

您可以直接在序列图像板/界面生成器中设置它们,也可以在以编程方式实现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)
    }
}

您不能影响所有项目,但可以将func添加到UIView/UIViewController init func。让我们调用它initIdentifiers,并在所有要为其分配accessibilityIdentifier的视图中覆盖它。