CoreGraphics 基礎
iOSのCoreGraphicsです。
iOSでCGXxxxといったCoreGraphics 関係のAPIを使うには, CoreGraphics.framework が必要です。
さて, CGXxxを使って図形やら線やらを描画していくのには, UIViewを拡張したクラスを作って, トップのUIに張っていくというのが, いいでしょう。
SampleView.h
#import <UIKit/UIKit.h> @interface SampleView : UIView @end
UIViewの拡張クラスです。
#import "SampleView.h" @implementation SampleView - (id)initWithFrame:(CGRect)frame { self = [super initWithFrame:frame]; if (self) { // Initialization code } return self; } // Only override drawRect: if you perform custom drawing. // An empty implementation adversely affects performance during animation. - (void)drawRect:(CGRect)rect { }
UIViewを作りました。
UIViewの拡張クラスをつくると, XCodeでは自動的にdrawRectというコードがコメントアウトされた状態で登場します。このコメントアウトを削除して
ここに描画するためのコードを書いていきます。
次にこれをトップのView, xibでもstoryboardでもいいですが, とりあえず, ViewControllerから貼付けましょう。
- (void)viewDidLoad { [super viewDidLoad]; UIView *view = [[SampleView alloc] initWithFrame:CGRectMake(self.view.frame.origin.x, self.view.frame.origin.y, self.view.frame.size.width, self.view.frame.size.height)]; [self.view addSubview:view]; }
ViewControllerの, viewDidLoadに書きました。結構省略しています。 元のviewの大きさや位置をとってきて, その大きさ道理にSampleViewを作って
addSubViewで貼付けました。これだけです。
実際の描画のコードは次回よりみていきましょう。
Android みたいにCanvasとViewかを意識する必要はないのです。