天天看点

UIGraphicsGetCurrentContext()

想在initwithframe或者其他函数里调用uigraphicsgetcurrentcontext()函数,

结果被告知invalid context,查资料。

按照文档中的说法,系统会维护一个cgcontextref的栈,而uigraphicsgetcurrentcontext()会取栈顶的cgcontextref,

正确的做法是只在drawrect里调用uigraphicsgetcurrentcontext(),

因为在drawrect之前,系统会往栈里面压入一个valid的cgcontextref,

除非自己去维护一个cgcontextref,否则不应该在其他地方取cgcontextref。

终于,恍然大悟