KIF:有没有办法在当前屏幕中获取所有可访问性标签?
KIF: is there a way to get all the accessibility labels in a current screen?
我正在使用 KIF 测试 iOS 应用程序,我想知道是否有办法在当前屏幕中获取所有辅助功能标签。我想要一个字符串数组,其中每个元素都是此屏幕具有的可访问性标签。
此函数可以return视图中的所有accessibilityLabel:
func getAllAccessibilityLabel(_ viewRoot: UIView) -> [String]! {
var array = [String]()
for view in viewRoot.subviews {
if let lbl = view.accessibilityLabel {
array += [lbl]
}
array += getAllAccessibilityLabel(view)
}
return array
}
func getAllAccessibilityLabelInWindows() -> [String]! {
var labelArray = [String]()
for window in UIApplication.shared.windows {
labelArray += self.getAllAccessibilityLabel(window)
}
return labelArray
}
并在KIF测试中调用:
let labelArray = getAllAccessibilityLabelInWindows()
print("labelArray = \(labelArray)")
我正在使用 KIF 测试 iOS 应用程序,我想知道是否有办法在当前屏幕中获取所有辅助功能标签。我想要一个字符串数组,其中每个元素都是此屏幕具有的可访问性标签。
此函数可以return视图中的所有accessibilityLabel:
func getAllAccessibilityLabel(_ viewRoot: UIView) -> [String]! {
var array = [String]()
for view in viewRoot.subviews {
if let lbl = view.accessibilityLabel {
array += [lbl]
}
array += getAllAccessibilityLabel(view)
}
return array
}
func getAllAccessibilityLabelInWindows() -> [String]! {
var labelArray = [String]()
for window in UIApplication.shared.windows {
labelArray += self.getAllAccessibilityLabel(window)
}
return labelArray
}
并在KIF测试中调用:
let labelArray = getAllAccessibilityLabelInWindows()
print("labelArray = \(labelArray)")