2010年10月21日木曜日

UIViewの削除について

//retainの場合
UIView *subView=[[UIView alloc]init];
[allView addSubview:subView]
[subView removeFromSuperview];
[subView release];//←ここでsubViewのdeallocが走る

//autoreleaseの場合
UIView *subView=[[[UIView alloc]init]autorelease];
[allView addSubview:subView]
[subView removeFromSuperview];//←ここでsubViewのdeallocが走る
/*[subView release];*///リリースするとエラーになる

リテインで追加直後にリリースした場合、
remove対象はどう指定するのだろうか…。
保持しておくか、subViewsメソッドで該当ビューを探すしかない?
autoreleaseが無難かも…