【发布时间】:2012-10-12 13:10:18
【问题描述】:
我正在解析父视图的子视图, 它有各种子视图,所有自定义类,10 个不同的 UIView 子类。 只有一个类是普通的 UIView。
现在当我循环通过时,我需要获取 UIView 子视图,isKindOfClass 未能这样做,因为它也为所有 UIView 子类返回 1。
我是否必须编写一个大的 if-else 构造来检查它是否是任何其他自定义 UIView 子类的对象,然后在最后一个 else 中得出结论,它是一个普通的 UIView。
或者有没有一种方法可以告诉我视图的确切类别?
【问题讨论】:
-
原因是什么 a) 不使用标准或自定义
tag属性 b) 未将添加的UIView子视图存储在内部变量中(使用 getter 方法包装)以获得最快的访问? -
你应该改用 isMemberOfClass
-
这是一个错误,我正在解决别人的烂摊子 :) 在运行时随机创建了各种自定义视图......并被移除了......它只是 UIView 的一组视图,具有所有自定义功能在它之外完成。像标签和所有。其他是自定义视图。我只是在写一些快速而肮脏的黑客来解决这个问题。
标签: objective-c ios