- 博客(13)
- 收藏
- 关注
原创 知识点
1.使用 cocaPods 管理第三方类库1.ruby 环境,大都把Ruby镜像指向taobao的2.下载CocoaPods执行如下命令:1sudo gem install cocoapods 若很久没反应,则是因为安装被墙阻拦解决方法1:打开vpn下载解决方法2:请看详细指南 http://code4app.com/article/cocoapods-in
2016-06-11 10:38:05
1982
1
原创 UIKit 性能调试
1.思考一下下面的问题1.为什么要把控件尽量设置成不透明的,如果是透明的会有什么影响,如何检测这种影响?2.为什么cell中的图片,尽可能要使用正确的大小、格式,如果错误会有什么影响,如何检测这种影响?3.为什么设置阴影和圆角有可能影响滑动时流畅度?4.shouldRasterize和离屏渲染的关系是什么,何时应该使用?1
2016-06-05 20:52:27
410
原创 UIImageView 的 UIImage 在 ARC 下释放内存
这样做的好处可能也是苹果的一种性能优化吧。不过这样做会带来一个坏处,就是如果你在一个循环里每次 new 出一个 UIImage,会在内存里一直不释放。这是我在书上看的一个例子,类似这样的for (int i = 0; i UIImage* image = [UIImage imageNamed:@"some_image"]; // 对 image 进行一些处理,比如存文件
2016-03-17 11:43:25
1409
原创 判断字符串为空格的判断
//判断内容是否全部为空格 yes全部为空格 no 不是- (BOOL) isEmpty:(NSString *) str { if (!str) { return true; } else { //A character set containing only the whitespace c
2016-03-10 15:29:14
1013
原创 更多的黑色提示框
点击更多的时候动画展开更多的按钮,包括动画1.h 文件#import #import "Define.h"@interface DRSDetailMoreSelView : UIView-(id)initWithFrame:(CGRect)frame withFromeWhere:(NSString *)mstr;@pro
2016-02-25 19:51:10
390
原创 图片的浏览,删除
1.h 文件#import #import "BaseViewController.h"/** * 图片查看视图 **/typedef void (^EditPhotosCompleteBlock)(NSInteger index);@interface EditPhotosController : B
2016-02-25 15:42:02
614
原创 长按手势添加到collectionView
长按手势添加到collectionView上可能触发俩次,以及方法不执行的解决方法:1.手势的添加- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{
2016-02-18 15:28:17
700
原创 Swift 的基础知识
1.打印// Swift 2.0 将print printlin合并为一个print 方法print("Hello World\n")// 多条语句同一行执行,语句间以;分隔println("Hello World\n");print("hello")2.// 常量和变量// let 修饰常量及不可变的量
2016-01-11 09:56:03
313
原创 编写高质量iOS 与OSX 代码的52个有效方法之内存管理
一,理解引用计数1.引用计数机制通过可以递增递减的计数来管理内存,对象创建好之后,其保留计数至少为1,若保留计数为正,则对象继续存活,当保留计数降为0时,对象就被销毁了.2.在对象生命期中,其余对象通过引用来保留或释放此对象,保留与释放操作分别会递增及递减保留计数.二,以ARC简化引用计数1.有ARC之后,程序员就无需担心内存管理问题了,使用ARC来编程,可省去类中的许多"样板代码
2015-12-27 16:20:23
436
原创 编写高质量iOS 与OSX 代码的52个有效方法之块与大中枢派发
一,块的基础知识1.没有参数,也不返回值 void (^someBlock)()= ^{ //Block implementation here }2. 返回int值,并且接受俩个int做参数int (^addBlock)(int a,int b) = ^(int a ,int b){return a + b;}定义好之后,就可以像函数那样使用了,
2015-12-27 14:43:37
413
原创 编写高质量iOS 与OSX 代码的52个有效方法之系统框架
1.熟悉系统框架 许多系统框架都可以直接使用。其中最重要的是Foundation 与CoreFoundation,这俩个框架提供了构建应用程序所需要的许多核心功能; 很多常见任务都能使用框架来做,例如音频与视频处理,网络通信,数据管理等; 请记住: 用纯C写成的框架与用Objective _ C 写成的一样重要,若想成为优秀的objcetive - C 开发者,应该掌握C
2015-12-20 20:25:55
493
原创 编写高质量iOS与OS X代码的52个有效的方法 之协议与分类
1.通过委托与数据源协议进行对象间通信委托模式:(Delegate patten) ,该模式的主旨是:定义一套接口,某对象若想接受另一个对象的委托,则需遵从此接口,以便成为其”委托对象(delegate)”为了指明可选方法,委托协议经常使用@optional 关键字来标注其大部分或全部的方法;如果是委托对象的可选方法,NSData *data = /*data obtained f
2015-12-13 20:49:14
414
转载 IOS NSMutableAttributedString 富文本的设置
1.NSAttributedString的初始化方法有:1. -initWithString:用String初始化,并没有Attributed信息。2. -initWithAttributedString:用AttributedString去初始化。3. -initWithString:Attributed:用string及attribute的dictionary来初始化。具体
2015-10-15 19:51:53
1031
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人