IOS开发
灰灰2016
不要用现实抱怨生活,不要刻意压抑自己和别人,没有人有必要因为你的存在而要刻意改变什么,改变的只能是你自己!
展开
-
iOS中#import和@class的区别
1.import会包含这个类的所有信息,包括实体变量和方法,而@class只是告诉编译器,其后面声明的名称是类的名称,至于这些类是如何定义的,暂时不用考虑,后面会再告诉你。2.在头文件中, 一般只需要知道被引用的类的名称就可以了。 不需要知道其内部的实体变量和方法,所以在头文件中一般使用@class来声明这个名称是类的名称。 而在实现类里面,因为会用到这个引用类的内部的实体变量和方法,所以需要转载 2015-01-20 15:56:47 · 732 阅读 · 0 评论 -
iOS项目代码行数统计
最近申请软著用到了,记录下。 1、打开终端 2、cd 进入项目根目录 3、输入命令 find . “(” -name “.m” -or -name “.mm” -or -name “.cpp” -or -name “.h” -or -name “*.rss” “)” -print | xargs wc -l 4、回车 出结果。备注:锐宁咨询 项目管理 工程项目管理平台 RELINK 甘特图原创 2016-10-19 16:04:25 · 376 阅读 · 0 评论 -
iOS layout的相关方法:layoutSubviews、layoutIfNeeded、setNeedsLayout
iOS layout的相关方法: layoutSubviews layoutIfNeeded setNeedsLayoutlayoutSubviews 这个方法,默认没有做任何事情,需要子类进行重写 。 系统在很多时候会去调用这个方法:1.初始化不会触发layoutSubviews,但是如果设置了不为CGRectZero的frame的时候就会触发。 2.addSubview会触发layou原创 2016-10-19 14:33:26 · 428 阅读 · 0 评论 -
View Frame、bounds、clipsToBounds、masksToBounds
Frame:其位置坐标是相对于对于父view, 例如 view.frame为(100,100,200,50)bounds:其位置坐标是相对于自己,例如:view.bounds 为(0 , 0 , 200, 50)clipsToBounds:是类View的属性,如果设置为yes,则不显示超出父View的部分masksToBounds:是类CALayer的属性,如果设置为yes,则不显示超出父View原创 2016-10-19 14:25:59 · 291 阅读 · 0 评论 -
升级Xcode8,以及IOS 10带来的一些问题
1.系统判断方法失效 在你的项目中,当需要判断系统版本的话,不要使用下面的方法: if ( [[[UIDevice currentDevice] systemVersion] compare:@”7.0”] == NSOrderedDescending) 或者其他的类似方法。2.升级到xcode8后,发布上传后构建版本不显示。 其实还是IOS 10造成的问题。 回到你的项目,打开 Info原创 2016-09-20 18:05:20 · 470 阅读 · 0 评论 -
NSString常用方法
NSString --实例化方法-------------- NSString *str = [[NSString alloc] init]; NSString *str = [[[NSString alloc] init] autorelease]; 注意:在NSString 中存在自己的实例化和初始化的方法 例如: NSString *str1 = [NSStr转载 2015-03-06 16:52:21 · 518 阅读 · 0 评论 -
清理Xcode缓存
开发久了,Xcode的缓存会越来越大,主要是因为会产生很多项目编译缓存,占用一大堆硬盘空间,这个时候就要清理了。原创 2016-08-08 13:12:14 · 1890 阅读 · 0 评论 -
iOS软件开发 设置UITextView输入内容位置从左上角开始
在使用UITextView时,发现输入起始位置不在左上角,而是从中间开始,所以研究了一下,发现只要加上下面一行代码即可搞定。 self.automaticallyAdjustsScrollViewInsets=NO;原创 2016-08-02 17:15:58 · 3710 阅读 · 0 评论 -
NSNotificationCenter消息注册与撤销
addObserver、removeOberver必须成对出现如果只注册不移除会造成多次注册同一个消息,消息被触发时同一个函数会执行多次。原创 2016-08-01 18:07:40 · 420 阅读 · 0 评论 -
Unknown class WFTextView in Interface Builder file.解决办法
今天把原来用过的一个控件类封装成了一个静态库RTextView.framework,发现在IB中无法识别这个类,而在.h和.m中都能识别这个类,后来干脆直接在代码中创建这个控件,发现没有问题,IB无法识别的问题也解决了,后经Google发现原来问题是这样的:是因为我在IB中使用的class没有在源代码中使用到,出现这个错误,是因为这个class只在IB中用到,编译器在其他源文件中没有发现对这个cla原创 2016-08-04 10:11:37 · 512 阅读 · 0 评论 -
Cannot proceed with delivery: an existing transporter instance is currently uploading this package
Mac显示隐藏文件:打开终端,输入defaults write com.apple.finder AppleShowAllFiles -bool YES,重启Finder,显示全部隐藏文件。转载 2016-07-01 14:31:41 · 893 阅读 · 0 评论 -
设置UITableViewCell背景色
设置UITableViewCell背景色原创 2015-07-16 10:57:07 · 799 阅读 · 0 评论 -
iOS高效开发常用的第三方类库
开发几个常用的开源类库及下载地址:1.jsonjson编码解码2.GTMBase64 base64编码解码3.TouchXML 解析4.SFHFKeychainUtils 安全保存用户密码到keychain中5.MBProgressHUD很棒的一个加载等待特效框架6.ASIHTTPRequest 等相关协议封装7.EGORefreshTableHeaderView转载 2015-03-11 16:39:50 · 476 阅读 · 0 评论 -
如何在iOS8中使用CoreLocation定位
在iOS8中使用CoreLocation定位需要申请授权;另外需要在Info.plist中增加两个键值:NSLocationAlwaysUsageDescription、NSLocationWhenInUseUsageDescription。原创 2015-03-11 10:54:03 · 543 阅读 · 0 评论 -
OBJECTIVE-C中NSString的writeToFile atomically参数解释
atomically:YES参数含义。[res writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:nil];原创 2015-03-06 14:53:41 · 8712 阅读 · 2 评论 -
IOS中两种变量声明方法的区别
一直有疑问,在objective_C中声明变量会有 2种方式,今天有空和网友讨论了下,并且自己查了stackoverflew后算是稍微弄懂了一点。记录如下: 用了一段oc;会发现有2种定义变量的方式 1.在 @interface :NSObject{} 的括号中,当然NSObject 是指一个父类,可以是其他的。 形式如下:1 @interfac转载 2015-01-20 15:26:18 · 4701 阅读 · 0 评论 -
iOS百度推送上传pem证书提示‘证书无效’
以前上传证书也遇到过这种类似的提示,按照官网配置流程经过一番折腾总能解决,然而这次折腾了大半天了。。。搞毛线啊,此事必有蹊跷。最终发现是我Mac系统版本(刚从10.12.6升到10.13)太高了,因为10.12.6的openssl版本是0.9.8zh,而10.13的系统openssl的版本是2.x.x,具体多少记不住了,公司电脑升级了,家里的还没升,百度推送不接受高于0.9.8的openssl生成...转载 2018-04-19 09:22:06 · 340 阅读 · 0 评论