私は 2ペインのNSSplitViewを持っています。その 1 つのサブビューはIKImageBrowserViewです。NSSplitView をCATransitionでアニメーション化する前に、そのビットマップをキャプチャして所定の位置にスワップする必要があります。
usingはIKImageBrowserViewcacheDisplayInRect
のコンテンツをキャプチャしませんが、他のペインのコンテンツをうまくキャプチャします。これは、独自のレイヤーツリーを持つIKImageBrowserViewに関係している可能性が高いと考えています。
誰かがこれが真実であることを確認できますか?
NSBitmapImageRep *imageRep = [self.imagesSplitView bitmapImageRepForCachingDisplayInRect:visibleRect];
[self.imagesSplitView cacheDisplayInRect:visibleRect toBitmapImageRep:rep];
NSImage *tempImage = [[NSImage alloc] initWithCGImage:[imageRep CGImage] size:visibleRect.size];
[self.tempView setImage:tempImage];
[self.holdingView replaceSubview:self.imagesSplitView with:self.tempView];
ビューの内容のビットマップ コピーを取得する方法について何か提案はありますか?
renderInContext
IKImageBrowserViewは、そのpresentationLayerを参照するためのメソッドを明らかにしないため、私には役に立たないと思います。
ImageKitはCALayers/CAOpenGLLayersとalchemyの組み合わせだと思います。
ありがとう。