Shl*_*rtz 2 user-interface classname uiview ios swift
寻找一种使用通用 String 属性获取多个视图的方法,现在我编写了以下方法来通过它们的标签获取 UIViews 的集合:
extension UIView {
func getViewsByTag(tag:Int) -> Array<UIView?>{
var views = Array<UIView?>()
for view in self.subviews{
if view.subviews.count > 0{
views.extend((view as UIView).getViewsByTag(tag))
}
if view.tag == tag {
println(view.tag)
views.append(view as? UIView)
}
}
return views
}
}
Run Code Online (Sandbox Code Playgroud)
但是,如果输入是具有含义的字符串会更好,例如“必需”以表示表单中的所有必填字段。
问:是否有可以用于这种方式的 String 属性,或者是否有更好的方法来快速获取视图集合?
您也可以使用该identifier属性。
extension UIView {
func getViewsByTag(tag:Int) -> Array<UIView?>{
return subviews.filter { ($0 as UIView).tag == tag } as [UIView]
}
func getViewsByIdentifier(id:String) -> Array<UIView?>{
return subviews.filter { ($0 as UIView).identifier == id } as [UIView]
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2397 次 |
| 最近记录: |