首页 > 一个 iOS 项目中,如果使用了很多的 tag,例如按钮的 tag,会有什么弊端吗?求教详细说明!

一个 iOS 项目中,如果使用了很多的 tag,例如按钮的 tag,会有什么弊端吗?求教详细说明!

如题~。~
一个 iOS 项目中,如果使用了很多的 tag,例如按钮的 tag,会有什么弊端吗?求教详细说明!


tag有什么坏处呢?目前表现出来的坏处就是,使用太多容易混乱,在复杂度较高的程序中,可读性很差。间接的也体现了一些工程师,不爱使用enum枚举的一个陋习,满篇的xxx.tag = 1....之类的代码。

tag有什么好处呢?既然UIKit的class里面都有一个tag属性,肯定是有它存在的道理,tag顾名思义就是给视图打上标签,可以用来遍历子视图,而不用定义property或是nsarray来进行特定的定义或保存指针。
举个例子,要你生成10个label,是使用循环生成方便还是通过property一个一个定义方便?当然使用循环+局部变量方便的多,如果这10个label同时存在交互,你就有三个选择:使用tag,或者使用nsarray进行保存指针,或者使用category或继承来自定义控件实现。这里就很明显了,使用tag需要的代码最少,当然也就成了众多工程师们偷懒的一种方式。


我觉得tag值过多,容易混乱,不好维护;而且通过tag值获取控件的方式是通过遍历所有子控件的tag值来完成的,效率会比较低下。


不会,能使用多少呢

【热门文章】
【热门文章】