我們可以創建從當前圖形上下文層,然後得到層的上下文:在iOS上,我們從上下文創建一個圖層並獲取圖層的上下文之後,這些上下文如何相互關聯?
CGContextRef context = UIGraphicsGetCurrentContext();
CGLayerRef layer = CGLayerCreateWithContext(context,
CGSizeMake(self.frame.size.width,
self.frame.size.height), NULL);
CGContextRef contextOfLayer = CGLayerGetContext(layer);
所以我們現在有2個上下文:context
和contextOfLayer
。這兩種情況如何相互關聯? contextOfLayer
實際上是context
的一部分,而context
有一個圖層上下文指針的數組?如果我用NSLog(@"%p", ...)
打印出他們的地址,他們有不同的地址,所以他們不是同一個對象。而且我認爲contextOfLayer
不會影響上下文堆棧,那它只是一種獨立的上下文而已?
aha,謝謝......我想知道內部結構不取決於它是如何實現的,但僅僅是爲了理解它如何在內部工作 –
CoreGraphics不是開源的,所以沒有辦法知道。 (除非你想拆解圖書館,這將是一項重要的工作。) –