Description
The CALayer class is the model class for layer-tree objects. It encapsulates the position, size, and transform of a layer, which defines its coordinate system. It also encapsulates the duration and pacing of a layer and its animations by adopting the CAMediaTiming protocol, which defines a layer’s time space.CALayerクラスはレイヤー・ツリーオブジェクトの雛形クラスである。レイヤーの位置、大きさ、変形をカプセル化し、座標系を定義する。また、CAMediaTimingプロトコルを用いることによって、レイヤーやそのアニメーションの継続時間や感覚もカプセル化し、レイヤーの時間系を定義する。
(CALayerはUIView同様入れ子配置も可能で、画面に画像を表示する機能をだけを使いたい場合、UIViewよりCALayerを直接使った方が軽快で細かな処理ができる。)
Availability
iOS (2.0 and later)Declared
CALayer.hReference
CALayer Class ReferenceGuides
Core Animation Cookbook, Core Animation Programming GuideSamples
AVSimpleEditoriOS, AccelerometerGraph, CoreTextPageViewer, SquareCam, oalTouch#import "StudyAppDelegate.h" /*CALayerを使うときには、「Linked Frameworks and Libraries」でQuartzCore.frameworksを追加し、 QuartzCore/QuartzCore.hをimportしなければならない*/ #import@implementation StudyAppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; self.window.backgroundColor = [UIColor whiteColor]; UIView *view = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 100, 300)]; view.backgroundColor = [UIColor blackColor]; [self.window addSubview:view]; //CALayerのコンストラクタ CALayer* layer1 = [CALayer layer]; CALayer* layer2 = [CALayer layer]; //CALayerの矩形サイズと位置の指定 layer1.frame = CGRectMake(20, 20, 30, 30); layer2.frame = CGRectMake(30, 70, 30, 30); //CALayerの背景色指定 layer1.backgroundColor = [UIColor yellowColor].CGColor; layer2.backgroundColor = [UIColor greenColor].CGColor; //CALayerの透明度の指定 layer1.opacity = 0.5; //CALayerの枠線の指定 layer2.borderColor = [UIColor redColor].CGColor; layer2.borderWidth = 5; //CALayerの表示→UIViewオブジェクトが作成された時に自動的に付随するCALayerへ入れ子にする [view.layer addSublayer:layer1]; [view.layer addSublayer:layer2]; [self.window makeKeyAndVisible]; return YES; } - (void)applicationWillResignActive:(UIApplication *)application{} - (void)applicationDidEnterBackground:(UIApplication *)application{} - (void)applicationWillEnterForeground:(UIApplication *)application{} - (void)applicationDidBecomeActive:(UIApplication *)application{} - (void)applicationWillTerminate:(UIApplication *)application{} @end
コメント