IOS中block的使用
block是ios4.0开始推出的,其特点是可以执行内联,作为参数传递到函数,block变量的定义,^ 用于运算符。
-(id)loadNibWithClassName:(NSString*)classname
{
Class class = NSClassFromString(classname);
NSArray *objects = [[NSBundle mainBundle] loadNibNamed:classname owner:nil options:nil];
int index = [objects indexOfObjectPassingTest:^BOOL(id obj, NSUInteger idx, BOOL *stop) {
return [obj isKindOfClass:class];
}];
assert(index != NSNotFound);
return [objects objectAtIndex:index];
}
上述函数根据nib创建一个class,在函数中内联了block函数,遍历objets,判断其是不是是创建好的类,将不是class的过滤掉
补充:移动开发 , IOS ,