复合语句
我们在看一些第三方的代码时,可能会看到类似于图中的代码。addSubview的参数放在一个"({})"代码块中,而view的创建及属性设置都放在"({})"完成,代码块最后一句即我们要添加的子view。
这种写法沿用了GNU C的一个特性,即复合语句(compound statement)。即在"({})"代码块中,我们可以放置多个语句,这些语句可以是循环、分支、变量声明、函数调用等。而复合语句的最后一句是一个表达式,其作为整个复合语句的最终值。
在写Objective-C代码时,使用复合语句能让我们的代码变得更优雅,特别是创建并添加一堆子view时,能让我们的代码看上去更整洁。建议经常使用。
、、、python
[self.view addSubview:({
UIView * view=[[UIView alloc]initWithFrame:(CGRect){CGPointZero,100,200}];
view.backgroundColor=[UIColor orangeColor];
view.layer.cornerRadius=8;
view.layer.masksToBounds=YES;
view;
})];
网友评论