自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 问答 (2)
  • 收藏
  • 关注

原创 工厂模式

最近一直做支付结果页面非常烦恼。情况是这样的,我写了一个支付结果页payResultView,起初只有"成功"和"失败"两种界面,因为共用的控件多,所以加了很多if self判断,耦合性度非常高,但代码量非常少,感觉还不错。       没过不久恶梦来了,现在变成了"成功"、"失败"、"成功带红包"、"打赏成功"四种界面,新加了两种情况。这下我可不干了,跟产品经理说这挺难的,不好加。但产品经理

2015-09-29 17:37:16 694

原创 ios 除数为0时

我本以为除数为0时会报crash,结果出人意料的是inf,无穷的意思。我原来想用落满灰沉的try-catch,结果又打入冷宫了,看来它在Ios里是一点用也没有啊!正确的处理方法如下:if (result == INFINITY) {        NSLog(@"除数不能为空,你不知道吗");  }

2015-09-29 11:46:48 1114

原创 CGContextAddArcToPoint

CGContextMoveToPoint(context, p1.x, p1.y);    CGContextAddArcToPoint(context, p2.x, p2.y, p3.x, p3.y, r);p1p2与 p2p3都和圆弧相切,根据r和角度可以算出相切的两个点。

2015-09-26 13:34:52 866

原创 MRC

NSArray* array = @[@"1"]; NSLog(@"%ld", [array retainCount]); NSArray* array2 = [array retain]; NSLog(@"%ld", [array retainCount]); [array release]; NSLog(@"%ld", [array retai

2015-09-24 20:51:18 330

原创 升级ios9变化

1.免证书开发2.bitcode.   现在第三方库需要支持bitcode,为了省事,我在building setting->enable bitcode->no了3.原来以dylib后缀的系统自带库都不能用了,现在变成同名的.tdb库了,直接替换就好了。不过如果是旧的项目不替换也没事,虽然显示红色,暗示你找不到这个文件,不用管它。

2015-09-24 10:18:27 715

转载 解决Xcode7真机调试 Could not launch "My App" process launch failed: Security

今天在以上环境调试App时出现了这个BugCould not launch "My App"process launch failed: Security然后打开手机点击app图标显示不受信任的开发者您的设备管理设置不允许在此台iPhone上使用开发者"XXX"的应用您可以在"设置"中允许使用这些应用纳闷了 : 没有这个设置呀? 后来找到了这个设

2015-09-24 09:22:25 920 1

原创 汉诺塔

- (void)moveWithNumber:(NSInteger)n from:(NSString*)from middle:(NSString*)middle to:(NSString*)to { if (n == 1) { NSLog(@"%@->%@", from, to); } else { [self moveWithNumber:n-1

2015-09-22 03:04:37 265

原创 杨辉三角打印

- (NSMutableArray*)printS:(NSInteger)n { NSMutableArray* array = [NSMutableArray array]; if (n == 1) { [array addObject:@(1)]; [array addObject:@(1)]; } else

2015-09-22 02:46:14 340

原创 NSDcitrionary哈希

NSDcitrionary内部是通过哈希表实现的。NSDictrionary中的key一般都是NSString类型的,如果要用自定义的类则需要实现三个方法, copy, hash, isEqual.copy:nsdictonrary里面的key对象放入之后就会copy,生成一个新的对象hash: 直接返回self,值如6435335,这样比较简单实用。             实现

2015-09-20 10:43:25 333

转载 快速汉字转拼音

第一阶段:git开源工具:PinYin4Objc第二阶段:网友推荐方法- (NSString *)transformToPinyin { NSMutableString *mutableString = [NSMutableString stringWithString:self]; CFStringTransform((CFMutableStringRef)mutab

2015-09-13 15:11:37 369

原创 ios汉字转拼音

NSString *hanziText = @"我是中国人";  if ([hanziText length]) {      NSMutableString *ms = [[NSMutableString alloc] initWithString:hanziText];      if (CFStringTransform((__bridge CFMutableStri

2015-09-13 15:07:08 333

转载 NSDictionary实现原理

NSDictionary(字典)是使用 hash表来实现key和value之间的映射和存储的, hash函数设计的好坏影响着数据的查找访问效率。数据在hash表中分布的越均匀,其访问效率越高。而在Objective-C中,通常都是利用NSString 来作为键值,其内部使用的hash函数也是通过使用 NSString对象作为键值来保证数据的各个节点在hash表中均匀分布。见NSDictio

2015-09-13 14:49:55 381

原创 extern 与 define 区别

定义常量有两种方法:最简单的方法:// Prefs.h#define PREFS_MY_CONSTANT @"prefs_my_constant"更好的方法:// Prefs.hextern NSString * const PREFS_MY_CONSTANT;// Prefs.mNSString * const PREFS_MY_CONSTANT = @"pre

2015-09-12 04:02:31 2477

原创 autoreleasepool

1.使用@autoreleasepool在生成大量对象时使用for (int i = 0; i < 500000; i++) { @autoreleasepool {// UIView* view = [[UIView alloc] initWithFrame:CGRectMake(10, 10, 100, 100)]; NSNumber *nu

2015-09-10 03:08:06 380

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除