了解如何使用基于字符串的 UIView
标识符而不是标签。 如果你厌倦了标记视图,请查看这些替代解决方案。
第一种方法:accessibility to the rescue!
长话短说,我很讨厌用愚蠢的数字值标记视图,因此我寻求一种更好的替代解决方案来解决我的问题。 事实证明,有一个名为 accessibilityIdentifier
的属性可以完成这项工作。
1 | extension UIView { |
我对 UIView
类进行了简单的扩展,因此现在我可以使用适当的字符串值来唯一地标识视图层次结构中的任何视图对象。 这是一个很好的解决方案,现在我可以以一种非常不错的方式命名我的 views
。 免费将名称存储在 accessibilityIdentifier
下将对 UI
测试带来好处。 😉
第二种方法:using enums
主要思想是为每个视图标识符都具有一个基于 Int
的枚举,因此基本上你可以使用 tag
属性存储枚举的 rawValue
。 它仍然不如上面的那个好,但是比依赖纯整数更安全。 😬
1 | enum ViewIdentifier: Int { |
老实说,在我将第一个代码片段复制并粘贴到本文之后,我只是想出了第二种方法,但是到底是什么,也许有人会喜欢它。 😂