CALayerの管理
公開日:
:
最終更新日:2014/02/24
Tips CALayer, Key-Value-Coding
CALayerはNSKeyValueCodingを実装している(Core Animation Extention)。
このため、[CALayer setValue:forKey:]というのが通るので、レイヤーに名前を付けて管理したい場合、子レイヤーをaddSubLayerするのとは別個に、親レイヤーに適当なキーでレイヤーをsetValueしてやると、子レイヤーを名前で逆引きしやすくなる。
[parentLayer setValue:childLayer forKey:@“hogehoge_layer”];
これによってCALayerの検索性が増し、特定のレイヤーを抽出することが極めて簡単になる。
従前は仕様でがっちりレイヤーの順序を決めておき、sublayersのobjectAtIndexで目的のサブレイヤーを引っ張ってきて処理をしてたのだが、なんとも恥ずかしい話である。
参照サイト:
Apple(Core Animation Programming Guide)
関連記事
-
-
Xcode10からのimage literal / color literalの指定方法
アセットにあるUIImageの直接指定が可能なImage literalですが、気がついたらアセット
-
-
preferredContentSizeをUINavigationContorllerのPop時に再設定する
popoverで表示しているViewControllerのサイズを、他のViewController
-
-
iPadのUIModalPresentationFormSheetでキーボードが閉じない
iPadでUIModalPresentationFormSheet(全画面ではなく、中央にフロートし
-
-
画面回転をしたあとに、UITextViewの先頭を表示する
回転によりサイズが可変するUITextViewで、縦向き(ポートレイト)から横向き(ランドスケープ)
-
-
Bitbucket課題の記法サンプル
Bitbucketの課題、およびwikiで利用できる記法についての記事です。 利用できる記法に
-
-
UITableViewのセルセパレータが画像の下部分だけ切れる場合の対応
iOS7のUItableViewCellだと、UITableView.imageViewに画
-
-
iOS9でURLスキームを登録する
私事ですが、iOS8から対応はしたいということで検証用に使っている自分のiPhoneもiOS8でがん
-
-
iOSシミュレータの帯域制限をテストする
iOSシミュレータで通信帯域制限をテストしたいと思ったんですが、Xcode8からXcode7.xとは
-
-
”No Scheme”になってしまった場合の対応
知人がXcodeで突然「No Scheme」表示になってRunするターゲットとデバイスが選択できない
-
-
UILabelの改行をInterfaceBuilderから入力する
UILabelの行数は任意に設定できて、「0」を指定すると行数を限定しないで(UILabelのbou
