- 博客(15)
- 收藏
- 关注
原创 iOS-判断是否为模拟器
#if TARGET_IPHONE_SIMULATOR //模拟器#elif TARGET_OS_IPHONE //真机#endif
2016-12-28 15:29:36 2349
转载 Masonry介绍与使用实践
前言1MagicNumber -> autoresizingMask -> autolayout以上是纯手写代码所经历的关于页面布局的三个时期在iphone1-iphone3gs时代 window的size固定为(320,480) 我们只需要简单计算一下相对位置就好了在iphone4-iphon
2016-12-27 09:54:39 295
转载 iOS单例详解
1、GCD方式创建单例123456789101112131415161718192021222324static id _instance;+ (insta
2016-12-26 17:55:33 198
原创 Linux 服务器查看日志的命令
1、通过Linux命令行工具(如:xShell4工具),连接到指定服务器;2、通过cd 命令进入指定文件目录,回车;(如:cd /app/caimi2),3、使用 命令:tail -f nohup.out4、进行动态跟踪;(注意:跟踪时,先执行命令,再发Http请求,然后回到命令行工具,退出同动态跟踪(使用Ctrl+c))5、怎么最快的索引到关键字,使用 vi n
2016-12-26 17:01:44 759
转载 正确使用AFNetworking的SSL保证网络安全
AFNetworking, iOS开发中,以其优雅的结构设计和简便的调用方式,使其成为了最流行的网络开源库之一(另一个应该算是ASI了,但经久失修不维护的原因,已经不是首选)。 我们在大多数情况下,都能够正确使用AFNetworking的功能,但在网络安全日趋严峻的今天,加入SSL使用HTTPS已经成为了很多大中型网站的首选;这点在国外尤其流行,例如Google已经全站HTTPS。 本
2016-12-26 16:59:36 219
原创 计算当前CADisplayLink时间
_displayLink = [CADisplayLink displayLinkWithTarget:self selector:@selector(displayAction:)]; [_displayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSRunLoopCommonModes];-(void)displayAc
2016-12-22 16:20:55 723
转载 AFNetworking之于https认证
写在开头:本来这篇内容准备写在AFNetworking到底做了什么?(三)中的,但是因为我想在三中完结这个系列,碍于篇幅所限、并且这一块内容独立性比较强,所以单独拎出来,写成一篇。本文从源码的角度,去分析AFNetworking对https的认证过程。旨在让读者明白我们去做https请求:如果使用AF,需要做什么。不使用的话,直接用原生NSUrlSess
2016-12-20 17:50:46 241
转载 配置Bundle Target
配置Bundle Target由于是OS X系统下的Bundle, 新建后我们要对其进行一些设置"Base SDK" 设置为 "IOS 8.3" (Xcode 6.3.2为例)"Build Active Architecture Only" 设置为 "YES""Debug Information Format" 设置为 "DWARF with dSYM File""OS X D
2016-12-20 15:12:07 318
转载 使用Core Data时需要避免的三个常犯错误
原文:Three Common Core Data Mistakes to Avoid作者: Bart Jacobs译者: CocoaChina-ydatong(简书)熟悉 Core Data 的开发者并不认为这个框架用起来很难。如果你遵循这个框架的规则,Core Data 不会让你感到困惑。但通常这也是个问题,开发者犯错往往是因为违反了某条他们并不
2016-12-16 09:26:19 311
转载 iOS之数组的排序(升序、降序及乱序)
#pragma mark -- 数组排序方法(升序)- (void)arraySortASC{ //数组排序 //定义一个数字数组 NSArray *array = @[@(3),@(4),@(2),@(1)]; //对数组进行排序 NSArray *result = [array sortedArrayUsingCom
2016-12-15 22:34:09 2209
转载 为什么 weakSelf 需要配合 strong self 使用
我们知道,在使用 block 的时候,为了避免产生循环引用,通常需要使用 weakSelf 与 strongSelf,写下面这样的代码:__weak typeof(self) weakSelf = self;[self doSomeBackgroundJob:^{ __strong typeof(weakSelf) strongSelf = weakSelf; if
2016-12-15 16:47:49 506
转载 block 什么时候需要构造循环引用
需要不使用 weak self 的场景是:你需要构造一个循环引用,以便保证引用双方都存在。比如你有一个后台的任务,希望任务执行完后,通知另外一个实例。在我们开源的 YTKNetwork 网络库的源码中,就有这样的场景。在 YTKNetwork 库中,我们的每一个网络请求 API 会持有回调的 block,回调的 block 会持有 self,而如果 self 也持有网络请求 API 的话,
2016-12-15 16:46:48 248
转载 weak 的内部实现原理
在 Friday QA 上,有一期专门介绍 weak 的实现原理。https://mikeash.com/pyblog/friday-qa-2010-07-16-zeroing-weak-references-in-objective-c.html《Objective-C高级编程》一书中也介绍了相关的内容。简单来说,系统有一个全局的 CFMutableDictionary 实例
2016-12-15 16:43:03 3026
原创 iOS判断NSDictionary中含有某个key
NSDictonary *dict = @{@"123":@"a";@"234":@:"b"};判断字典中是否含有某个key一:if ([dict.allKeyscontainsObject:@"a"]) { }二: [dict.allKeys enumerateObjectsWithOption
2016-12-15 16:36:51 2819
转载 iOS 个别页面强制横屏,其他页面竖屏
在AppDelegate.h里面添加@property(nonatomic,assign)NSInteger allowRotation;在AppDelegate.m文件里面添加- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow
2016-12-15 10:13:54 570
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人