tag的使用,其实某些情况可以用hash代替。
来源:互联网 发布:帝国整站电影源码 编辑:程序博客网 时间:2024/04/26 17:58
在java等其他语言里用hashMap判断是否是同一实例,于是我在OC里查找有没有类似的方法,于是发现了一个继承与NSObject的属性“hash”。hash是实例的哈希值,在某一实例为唯一值。(如理解错误,希望指出)。
某些用tag的场景,比如:
多个button的使用,而多个button为自身属性或者参数,多个button用同一个方法,如
某些用tag的场景,比如:
<pre name="code" class="objc">-(void)clickButton:(UIButton*)sender
这时很多人的做法是分别给button标记tag值。如:
self.button1.tag = 1; self.button2.tag=2;
然后:
<pre name="code" class="html"><pre name="code" class="objc">-(void)clickButton:(UIButton*)sender{ if(sender.tag == 1){ }else if(sender.tag == 2){ }}
</pre><pre name="code" class="objc">
其实可以这样实现
</pre><pre name="code" class="objc"><pre name="code" class="objc">-(void)clickButton:(UIButton*)sender{ if(sender.hash == self.button1.hash){ }else if(sender.hash == self.button2.hash){ }}
</pre><pre>
0 0
- tag的使用,其实某些情况可以用hash代替。
- 黑马程序员 学习笔记五:JDK5之可变参数,代替某些重载的情况
- 微软的某些东西,确实不敢恭维,其实,它可以做得更好
- SparseArray与ArrayMap在某些情况下代替HashMap
- 使用Map代替else if过多的情况
- 某些mysql like查询也是可以使用到索引的
- 某些mysql like查询也是可以使用到索引的
- union 代替or的情况
- 任务处理类Bolts的使用(可以代替AsyncTask)
- Android中关于RecycleView的使用,代替ListView,可以提高效率
- 其实计算机可以裸奔的
- 其实Editplus可以这样用!!
- 其实Editplus可以这样用!!
- 什么情况下钽电容可以代替铝电解电容?
- Eclipse中使用正则屏蔽Logcat中的某些Tag
- Eclipse中使用正则屏蔽Logcat中的某些Tag
- 一个代替linux的fetion的软件,用起来挺方便的,而已可以在控制下就能使用。
- 完全可以用window.open()代替window.showModalDialog()的方法
- C++ Primer学习笔记- 第三章:标准库类型之四
- 获取图片宽和高
- Android 多线程之Handler
- Sublime text 3解放鼠标的快捷键总结
- ubuntu cvs 安装与配置
- tag的使用,其实某些情况可以用hash代替。
- 如何节省手机掉入水中
- 小结小结
- Android - JNI静态(static)加载OpenCV
- 如何将节目视频游戏
- 高斯滤波之一维滤波
- Java并发-ReentrantLock源码分析
- Hadoop 新 MapReduce 框架 Yarn 详解
- Delphi Xe DataSnap Rest + Flex 开发 基本探索2(取得Json 数组)