第一篇博文,就分享下自己前几天刚写的一个方法。这个方法可以很方便的将子视图中找到特定类型的视图。例如在ios中searchBar中找到UITextField,然后才可以进行对textField的自定义。这个方法是用递归来实现。欢迎大家交流。
- (
UIView
*)searchSubviewForClass:(Class)mclass{
__block UIView * reslutview ;
NSArray * subviews = self.subviews;
if (self.subviews.count<=0) {
return nil;
}
[subviews enumerateObjectsUsingBlock:^(UIView * subView, NSUInteger idx, BOOL * _Nonnull stop) {
if ([subView isKindOfClass:mclass]) {
reslutview = subView;
*stop = YES;
}
}];
if (!reslutview) {
[subviews enumerateObjectsUsingBlock:^(UIView * subView, NSUInteger idx, BOOL * _Nonnull stop) {
reslutview = [subView searchSubviewForClass:mclass];
if (reslutview) {
*stop = YES;
}
}];
}
return reslutview;
}