作者: boyXiong
源地址: http://blog.csdn.net/boyXiong/article/details/49097753
在开发的时候需要一个问题,在产品已经完成后,产品经理来了一句
今天上架,顺道统计整个App 每个按钮的点击次数,进行数据分析
东西都做完了,还整这个,项目原因
不能使用友盟,但是作为一个技术宅,如果做不出来,那不是也太逊了吗,于是对需求进行了分析
1.统计每个按钮的点击次数,可以给按钮增加一个
clickedCount属性每次执行方法clickedCount++2.如果对象销毁,成员属性就释放,显然这个方法的背后还要做点什么
3.如此同时,整个项目都做完,项目所有的按钮也完毕,如果要增加属性,然后在每个按钮的点击后执行的方法中要添加一些代码,这不是要搞死人的节奏吗,一个项目中的按钮, 何其多啊,而且当时使用的是
UIButton系统自带的
想一想 ,我所有的点击事件,都是UIButton,怎么拦截UIButton的添加点击事件了
方法一
继承UIButton(果断放弃,因为整个项目都完成了,可以说项目在没有这个需求下是可以没有问题的,如果使用这个方法,改动太大,那么程序出错的风险也就大,同时时间太长,再次,万一哪个按

本文介绍了一种在iOS应用开发中,如何通过Runtime技术在不修改已有代码的情况下,统计每个按钮的点击次数。作者提出三种方法,最终选择了通过添加UIButton的分类来重写点击事件方法,实现无侵入性的统计功能。
1万+

被折叠的 条评论
为什么被折叠?



