接到一个需求, 现有多个品牌的商品,使用字符串保存已选中的品牌,使用','隔开,可以反选。 分析问题可知: 1. 字符串由多个品牌名字组成,由 ',' 隔开。 2.如果选中的品牌不在字符串内,则拼接到字符串。 3.如果选中的品牌在字符串内,移除这个品牌。 子字符串在字符串内的位置有 3 种情况: 在 ...
分类:
其他好文 时间:
2018-09-17 14:07:19
阅读次数:
136
《Objective-C 高级编程》 这本书有三个章节,我针对每一章节进行总结并加上适当的扩展分享给大家。可以从下面这张图来看一下这三篇的整体结构: 注意,这个结构并不和书中的结构一致,而是以书中的结构为参考,稍作了调整。 本篇是第一篇:引用计数,简单说两句: Objective-C通过 retai ...
分类:
其他好文 时间:
2018-09-13 20:14:53
阅读次数:
192
swift 使用OC framework时注意 general - embedded Binaries添加对应库,否则会报错 ...
分类:
编程语言 时间:
2018-09-12 19:56:49
阅读次数:
318
1. 将.chm 打开方式选择到 C:\Windows\SysWOW64\hh.exe 2.“右键属性” 查看.chm文件是否加锁,加锁情况下按下图解锁即可。 3.若未加锁,win10 64位在 C:\Windows\SysWOW64\ 目录下找到 hh.exe itss.dll hhctrl.oc ...
(一)构造函数 h文件 m文件 调用 (二)block block为可以实现特定功能的模块,跟C#中采用lamda表达式定义的委托相似 block定义 block使用 (三)协议protocol 类似于C#中的接口 定义,protocol只需要定义方法,在继承此协议的类中去实现 定义一个类去继承上述 ...
分类:
其他好文 时间:
2018-09-08 18:55:34
阅读次数:
177
1.线程安全出现条件:多个线程访问更改同一个变量 2.OC在定义属性时有nonatomic和atomic两种选择 atomic:原子属性,在setter方法中会为属性加锁(默认为atomic),线程安全,需要消耗大量的资源 nonatomic:非原子属性,不会为setter方法加锁,非线程安全,适合 ...
分类:
移动开发 时间:
2018-09-05 17:57:40
阅读次数:
171
和上一篇文章一样,数组的重要性不言而喻,在OC编程的过程中我们会不断的使用到NSArray,和C语言不同的是,我们这里的数组只能存OC对象类型,不能存C语言基本数据类型,也不能存NSNull类型,但是我们这里的数组可以存多种对象类型,比如,在同一个数组里面,既可以存字符串类型,又可以存对象化了以后的 ...
分类:
编程语言 时间:
2018-09-04 13:40:03
阅读次数:
196
属性是OC(Objective C)的一项特征,就像人的某一项特征。 这个是基于OC是面向对象的语言,万物皆对象。这也就很好理解了。 就相当于声明了label 这个属性,并且实现了他的setting和getting方法。 属性有什么特征: 1、原子性与非原子性 原子性(atomic)在读与写属性的时 ...
分类:
移动开发 时间:
2018-08-29 14:31:18
阅读次数:
232
问题: scrollView 滑动与系统右滑返回的边缘手势冲突时,返回手势失效 解决方案 思路就是: 右滑返回优先. 当触发到右滑返回手势时就取消 scrollView的手势 OC版 [self.contentScrollView.panGestureRecognizer requireGestur ...
分类:
其他好文 时间:
2018-08-29 14:23:53
阅读次数:
152
在创建一个对象的时候我们经常会用到init方法,单单是init只能是初始化,当我们在初始化的时候想要给这个对象加上默认的东西的时候, 系统提供的init方法就不能满足我们的需要,这时,就需要我们自己去重写init方法; 通常在使用init方法的时候,系统先会在自己这个类中查询是否实现(重写)这个方法 ...
分类:
其他好文 时间:
2018-08-24 21:51:14
阅读次数:
164