コアアニメーションレイヤー階層の兄弟レイヤー間の関係に関する興味深い問題があります。ここに私の階層です:テーブルビューのレイヤーが兄弟レイヤーに影響するようです。
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