认证高级PHP讲师
可以修改,通过 kvc 或者 递归查找子视图 方式均可以实现该目的。
@interface UIView (FindView) - (UIView *)findViewWithClassName:(NSString *)aName; @end @implementation UIView (FindView) - (UIView *)findViewWithClassName:(NSString *)aName { NSLog(@"%@", self); if([[[self class] description] isEqualToString:aName]) return self; for(UIView *subview in self.subviews) { UIView *huntedSubview = [subview findViewWithClassName:aName]; if(huntedSubview != nil) return huntedSubview; } return nil; } @end
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath { NSString *prefix = @"UITableViewCell"; NSString *suffix = @"EditControl"; NSString *className = [prefix stringByAppendingString:suffix]; UIView *view = [cell findViewWithClassName:className]; view.backgroundColor = [UIColor redColor]; NSLog(@"%@", view); }
可以修改,通过 kvc 或者 递归查找子视图 方式均可以实现该目的。