我有一個有趣的問題,涉及核心動畫層次結構中兄弟層之間的關係。這裏是我的層次:表視圖的層似乎正在影響兄弟層
Animation layer: <CALayer: 0x7ccf060> <--- custom animation layer
Content view's sublayers: (
"<CALayer: 0x7e7db10>", <--- map view layer
"<CALayer: 0x7cbfe10>", <--- table view layer
"<CALayer: 0x7ccf060>" <--- custom animation layer
)
所以,我有幾層的圖層樹,其中一個是我爲動畫(其中包含幾個子層,所有的,其內容是從CGImageRef
提供)創建一個圖層。
顯然,動畫層是表視圖層的同級而不是子級。然而,現在發生的情況是,這個自定義動畫層被直接與表視圖的contentOffset
成比例,即我滾動了多少。就我而言,動畫層實際上是表視圖的圖像表示。
這裏的表視圖的樣子向下滾動了一下就在我插入動畫層作爲同級:
這裏是後,當我使表視圖的層到CGImageRef
並使用它作爲源內容的定期CALayer
的contents
屬性:
同樣,圖層內容僅僅是表視圖圖層的圖像表示,所以我看不到contentOffset
會如何影響這個其他圖層。也許如果我將圖層添加爲表視圖圖層的子圖層,也許我可以看到哪裏會出現問題。但是這個動畫層是兄弟層,爲什麼它會影響任何東西?
這裏是動畫層的框架,我已經還記錄:
Animation layer's frame: {{0, 0}, {320, 372}}
太棒了!這工作完美。我不知道表視圖的圖層內容是基於其邊界的。 – LucasTizma 2012-02-29 23:21:37