iOS
文章平均质量分 63
造起来
每天多会一点;心情开心一点.
展开
-
__VA_ARGS__用法(转)
自定义调试信息的输出 调试信息的输出方法有很多种, 例如直接用printf, 或者出错时使用perror, fprintf等将信息直接打印到终端上, 在Qt上面一般使用qDebug,而守护进程则一般是使用syslog将调试信息输出到日志文件中等等… 使用标准的方法打印调试信息有时候不是很方便, 例如Qt编程, 在调试已有的代码时, 我想在打印调试信息的地方, 把代码位置也打印出来以原创 2017-06-07 09:56:19 · 2824 阅读 · 0 评论 -
iOS成长之路-- XCode工程中 Project 和 Targets区别
XCode工程中 Targets讲解是本文要介绍的内容,相信很多人都注意到XCode中, 有个Target的概念. 这在很多地方都有所体现, 比如打开一个工程后, 左侧的列表中有Targets一项, 而在工程界面的顶部菜单中, project里面也有多个涉及到Target的项目, 那么这个Target到底是什么呢? Apple的人是这样说的:“ Targets that define转载 2017-10-08 10:16:55 · 441 阅读 · 0 评论 -
iOS积累--textField获取键盘高度以及限制字数
获取键盘: 方法: 增加监听, 当键盘出现或改变时收到消息 注意:需要在dealloc里面注销通知[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil]; //键盘将要出现原创 2017-08-07 11:34:03 · 644 阅读 · 0 评论 -
iOS积累--objectForKey与valueForKey在NSDictionary中的差异
从 NSDictionary 取值的时候有两个方法,objectForKey: 和 valueForKey:,这两个方法具体有什么不同呢?先从 NSDictionary 文档中来看这两个方法的定义:objectForKey: returns the value associated with aKey, or nil if no value is associated with a转载 2017-07-28 14:15:07 · 422 阅读 · 0 评论 -
iOS积累--字符串转化为NSDate, 获取当前时区的系统时间
iOS积累–字符串转化为NSDate, 获取当前时区的系统时间“` + (NSDate )currentDateByPreviousDate:(NSDate )date{// 获得系统时区NSTimeZone *zone = [NSTimeZone systemTimeZone];//得到源日期与世界标准时间的偏移量NSInteger interval = [zone secondsFrom原创 2017-07-24 10:53:51 · 1972 阅读 · 0 评论 -
iOS积累--- 野指针和僵尸对象
野指针.C语言: 当我们声明1个指针变量,没有为这个指针变量赋初始值.这个指针变量的值是1个垃圾指 指向1块随机的内存空间。OC语言: 指针指向的对象已经被回收掉了.这个指针就叫做野指针.僵尸对象. 内存回收的本质.申请1块空间,实际上是向系统申请1块别人不再使用的空间.释放1块空间,指的是占用的空间不再使用,这个时候系统可以分配给别人去使用.在转载 2017-07-18 14:54:44 · 290 阅读 · 0 评论 -
iOS积累--iOS 出现内存泄漏的几种原因
内存泄漏转载 2017-07-18 14:46:16 · 284 阅读 · 0 评论 -
iOS-- NS_ENUM和NS_OPTIONS区别
iOS开发NS_ENUM和NS_OPTIONS区别OC里枚举的两种类型.NS_ENUM和NS_OPTIONS本质上是一样的都是枚举.typedef NS_ENUM(NSInteger, UIViewAnimationTransition) { UIViewAnimationTransitionNone, UIViewAnimationTr原创 2017-06-15 15:16:03 · 348 阅读 · 0 评论 -
iOS枚举(enum)
前言Enum,也就是枚举,从C语言开始就有了,C++、Java、Objective-C、Swift这些语言,当然都有对应的枚举类型,功能可能有多有少,但是最核心的还是一个—规范的定义代码中的状态、选项等“常量”。Item 5 - Use Enumerations for States, Options, and Status Codes本节的内容就是如何正确的使用枚举。转载 2017-06-15 15:10:42 · 277 阅读 · 0 评论 -
iOS积累-为什么使用属性之后, 同时重写setter,getter方法会报错
今天有一个初学者遇到一个问题,就是使用property的时候,同时重写set get方法会报错,如#import @interface ViewController : UIViewController{ } @property (nonatomic, copy) NSString *name; - (void)setName:(NSString *)name; - (NSString *)原创 2017-06-27 17:02:08 · 1106 阅读 · 0 评论 -
iOS alloc、init和new方法
alloc:分配内存。init:初始化。new:代替上面两个函数:分配内存,并且初始化。 new 和alloc,init 在功能上面几乎是一致的,分配内存并完成初始化注意:1.在实际开发中很少会用到new,一般创建对象时我们一般是 [[className alloc]init];2.区别只在于alloc分配内存的时候使用了zo原创 2017-06-14 11:33:04 · 419 阅读 · 0 评论 -
iOS积累-iOS图片填充UIImageView(contentMode)
本文主要形象的介绍一下UIView的contentMode属性: UIViewContentModeScaleAspectFit, //这个图片都会在view里面显示,并且比例不变 这就是说 如果图片和view的比例不一样 就会有留白如下图1 UIViewContentModeScaleAspectFill转载 2017-07-13 08:49:06 · 430 阅读 · 0 评论 -
iOS积累-类方法能否访问自己的属性, self调用问题
类方法不能直接访问自己的属性 即[objc] view plain copyself.iconImageArr;不能用self访问。 在类方法中要访问自己的属性,必须要在类中实例化一个对象,然后再调用;如下方代码:[objc] view plain copy// // F转载 2017-07-03 11:15:12 · 8683 阅读 · 0 评论 -
在release版本禁止输出NSLog内容
一般我们在APP开发中,喜欢用NSLog输出语句来调节bag,而项目完成之后没有删除或注释,从而影响真机的执行效率,给大家提供一个方法,来解决这个问题: 前提:在XCode做开发调试时往往需要打印一些调试信息做debug用, 大家知道当打印信息的地方多了之后在模拟器上跑可能不会有什么问题, 因为模拟器用的是电脑的硬件但是当应用跑在设备上时这些输出语句会在很大程度上影响应用的性能, 针对这种问题可以转载 2017-06-07 16:28:56 · 791 阅读 · 0 评论 -
xcode里面怎么给文件加前缀
很多时候我们建文件时,会想要带上前缀, 不管是公司名也好,还是自己的标识名也好.在已有工程中,点击工程target,右侧Project Document中有Class Prefix,以后每次创建类都会带前缀,至于已经生成的,比如AppDelegate则需要手动改下类名以保持一致。原创 2017-06-07 14:56:34 · 784 阅读 · 0 评论 -
iOS成长之路--iOS 11 安全区域适配总结
导语:本文主要是对iOS 11下APP中tableView内容下移20pt或下移64pt的问题适配的一个总结。内容包括五个部分:问题的原因分析、adjustContentInset属性的计算方式、什么情况下的tableView会发生内容下移、有哪些解决方法、解决这个问题时遇到的另外一个小问题。一、iOS 11下APP中tableView内容下移20pt或下移64pt的原因分析问题如下图所示转载 2017-10-09 09:44:26 · 508 阅读 · 0 评论