- 博客(8)
- 收藏
- 关注
原创 线程安全的CGContext绘图
拜读了《iOS 7Progaramming Pushing the Limits》( 中文版挫名《iOS编程实战》),受益匪浅。 结合自己的踩坑经历,分享下Quartz(Core Graphics)框架里的绘图上下文,CGContextRef。 OK,我们常用UIGraphicsGetCurrentContext();去获取上下文,这是一个线程不安全的方法,但当踩坑之前,我是不知道的,相信也有
2014-12-23 00:49:41 1253
原创 ios Notification list
起动 UIWindowDidBecomeVisibleNotification UIWindowDidBecomeKeyNotification UIApplicationDidFinishLaunchingNotification _UIApplicationDidRemoveDeactivationReasonNotification UIApplicationDidBecomeActive
2014-07-30 16:14:47 1543
原创 iOS 自定义backBarButtonItem leftBarButtonItem
1. BackButtonItem 根据官方文档,不可能tong guo自定义customview的方式
2014-07-21 14:04:40 5034
原创 iOS 常用宏
只要宏没定义的很深,宏还是带来了很多的方便,直接上代码。。 代码会上传到github #define ApplicationDelegate ((AppDelegate *)[[UIApplication sharedApplication] delegate]) #define UserDefaults [NS
2014-06-17 14:35:13 581
原创 C++/C 宏列表
C中的一个惯用方法,是说有一个已命名的实体列表,需要为它们中的每一个建立函数,将它们中的每一个初始化,并在不同的代码模块中扩展它们的名字。这在Mozilla的源码中经常用到,我就是在那时学到这个技巧的。例如,在我去年夏天工作的那个项目中,我们有一个针对每个命令进行标记的宏列表。其工作方式如下: #define FLAG_LIST(_) \ _(InWorklist) \ _(Emit
2014-04-28 17:13:54 1178 2
原创 C/C++ typedef 陷阱
陷阱一: 记住,typedef是定义了一种类型的新别名,不同于宏,它不是简单的字符串替换。比如: 先定义: typedef char* PSTR; 然后: int mystrcmp(const PSTR, const PSTR); const PSTR实际上相当于const char*吗?不是的,它实际上相当于char* const。 原因在于const给予了整个指针本身以常量性
2014-04-28 12:03:20 635
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人