【发布时间】:2014-11-08 12:35:01
【问题描述】:
我有 UITableViewCell,我在其中添加了一个 UIView,并在其中添加了子视图 UIButton、UIImageView。
现在我想访问willDisplayCell 中的 UIView。为此,我在下面。
NSArray *subviews;
subviews = cell.subviews;
int xxyyzz = 1;
for(id aView in subviews) {
NSLog(@"aView====%@" , [UIView class]);
if([aView isKindOfClass:[UIView class]]) {
NSLog(@"This is UIView... Do what you want to do...");
}
}
但是,当我运行时,所有子视图(即 UIButton、UIImageView 等)都会收到 This is UIView... Do what you want to do...。 aView====UIView
我相信这是因为,UIView 是所有对象的超类。
有没有办法只能访问我在UITableViewCell 中拥有的 UIView...
【问题讨论】:
-
您在寻找这个 cell.contentView.subviews 吗?
-
@Shoaib :不,我只想要我创建的 UIView...
-
你明白了,因为所有视图都是 UIView 的子类。你期待什么?如果你想要一个你创建的视图,显而易见的事情是保持指向它的指针(在自定义单元类中)。否则,您可以标记视图并检查标记,但您需要确保标记不会与另一个标记冲突。
-
@HotLicks :是的,我也遇到了问题和解决方案......
-
@Downvoter : 请详细了解downvote ..
标签: ios objective-c uitableview uiview