- 博客(9)
- 资源 (1)
- 收藏
- 关注
原创 iOS依赖注入
从一个例子开始,比如说写了这样一个方法:- (NSNumber *)nextReminderId{ NSNumber *currentReminderId = [[NSUserDefaults standardUserDefaults] objectForKey:@"currentReminderId"]; if (currentReminderId) { //
2015-11-25 12:29:44 741
原创 MVVM模式
众所周知的MVC模式,这种模式给我们带来好处的同时,弊端也是很明显,随着业务逻辑的增多viewController的变得越来越复杂,这时候,我们就需要一种加强版的模式来扩展,即使用一种叫做 Model-View-ViewModel 的架构替换 Model-View-Controller。所以,MVVM 到底是什么?与其专注于说明 MVVM 的来历,不如让我们看一个典型的 iOS 是如何构建
2015-11-25 11:04:11 498
原创 IP TCP和HTTP
当 app 和服务器进行通信的时候,大多数情况下,都是采用 HTTP 协议。HTTP 最初是为 web 浏览器而定制的,如果在浏览器里输入 http://www.objc.io ,浏览器会通过 HTTP 协议和 www.objc.io 所对应的服务器进行通信。HTTP是运行在应用层上的应用协议,而不同的层级上都有相应的协议在运行。层级的堆栈关系一般可以这么描述:Application La
2015-11-25 10:35:30 756
原创 Objective-C关联引用
在 Objective-C 中可以通过 Category 给一个现有的类添加属性,但是却不能添加实例变量,这似乎成为了 Objective-C 的一个明显短板。然而值得庆幸的是,我们可以通过 Associated Objects 来弥补这一不足。本文将结合 runtime 源码深入探究 Objective-C 中 Associated Objects 的实现原理。读者需要着重关注以下三
2015-11-20 11:54:23 447
原创 The operation couldn’t be completed. (LaunchServicesError error 0.)
问题描述:当运行Xcode6时,编译代码成功,但是登陆模拟器失败,显示错误:The Operation couldn't be completed.(LaunchServicesError error 0.)解决办法:第1种方法.点击当前的模拟器,点击IOS Simulator->Reset Content and Settings...->Reset,然后会重置模拟器,再编译代码可登
2015-11-12 11:47:36 1301
原创 "_OBJC_CLASS_$ [文件名1]referenced from in[文件名2]:ld: symbol(s) not found问题解决办法
说实话开发一年多了,遇到了至少三次以上这种问题,很困惑,也很难搞觉得,其实很简单解决办法,在build Phases中添加文件名1的.m文件即可了。"_OBJC_CLASS_$"PackageTourCustomAnnotationView, referenced from in PackageTourProductDetailMapViewController.o :ld: symbol(s
2015-11-10 16:20:02 1319
原创 #ifndef #define,#endif 和 #if DEBUG,#endif的用法
在一个大的软件工程里面,可能会有多个文件同时包含一个头文件,当这些文件编译链接成一个可执行文件时,就会出现大量重定义的错误。在头文件中实用#ifndef #define #endif能避免头文件的重定义。方法:例如要编写头文件test.h在头文件开头写上两行:#ifndef _TEST_H#define _TEST_H//一般是文件名的大写头文件结尾写上一行:#endif这样一
2015-11-03 17:51:18 3417
原创 AutoLayout进阶
1.AutoLayout的content hugging / compressioin resistance内容吸附和压缩阻力 简单理解:防止被拉大 防止被压缩 可以理解为 intrinsic content size的优先级 contentHuggingPriority 阻止自己变大的优先级,默认为251,值越高,被拉大的优先级越低。 例如:一行平行两个label,
2015-11-03 17:34:14 619
原创 iOS9 新特性联系人Contact FrameWork---OC版
公司职能课堂讲课,准备了一篇关于iOS9 新特性联系人,在这里以博客的形式也记录下来。分享给大家。初识contact framework什么是contact?iOS 9 中,苹果介绍了新的 Contacts framework。允许用户使用 Objective-C 的 API 和设备的通讯录进行交互,同样适用于 Swift 语言。比起之前通过 AddressBook frame
2015-11-02 12:29:38 4831
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人