iOS开发中addSubview的参数放在一个"({})"代码块中

iOS开发中addSubview的参数放在一个"({})"代码块中

今天在微博中看到南峰子_老驴微博分享的一个小技巧在此记录分享下

[self.view addSubview:({

    UIView *view = [[UIView alloc]initWithFrame:(CGRect){100,200,200,100}];
    
    view.backgroundColor = [UIColor redColor];
    
    view;
})];

如上述的代码片段,通常我们是先创建一个视图再将这个视图添加到父类视图中,而上述的方法就是直接将要添加到父类的视图放在"({})"代码块中

这种写法沿用了GNU C的一个特性,即复合语句(compound statement)。即在"({})"代码块中,我们可以放置多个语句,这些语句可以是循环、分支、变量声明、函数调用等。而复合语句的最后一句是一个表达式,其作为整个复合语句的最终值。

使用复合语句可使得编写的代码更加优雅,查看各个视图控件更加的清晰整洁

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容