StoryBoardを使わず、コードで書かれていたプロジェクトを移行するときには注意が必要です。
initWithCorder: | initWithNibName:bundle: | initWithStyle:reuseIdentifier: |
---|---|---|
StoryBoardから生成するとき | コードからUIViewControllerを生成するとき | コードからUITableViewCellなどのUIViewを生成するとき |
「initWithCorder:」… StoryBoardからインスタンスを生成するときに呼ばれる初期化メソッド
aboutInitialize.m
- (id)initWithCoder:(NSCoder*)decoder
{
self = [super initWithCoder:decoder];
if (!self) {
return nil;
}
// write something.
return self;
}
「initWithNibName:bundle:」… UIViewControllerをコードから生成するときに呼ばれる初期化メソッド
aboutInitialize.m
- (id)initWithNibName:(NSString*)nibName bundle:(NSBundle*)bundle
{
self = [super initWithNibName:nibName bundle:nil];
if (!self) {
return nil;
}
// write something.
return self;
}
「initWithStyle:reuseIdentifier:」… UITableViewCellなど、UIViewのクラスをコードから生成するときに呼ばれる初期化メソッド
aboutInitialize.m
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
// write something.
}
return self;
}