誰かがnibファイルからビュー階層をロードする適切な方法を教えてくれませんか。ロードされたビューをテンプレートとして使用して、ビューのファミリーをスタンプしますが、現在使用しているアプローチは微妙に壊れています。あるべきときにコピーしたり保持したりしていないようです。関連するコードは次のとおりです。
// pageSet is a list of view tag numbers I'll be using
for (NSNumber *n in pageSet) {
NSUInteger viewTag = [n integerValue];
// Ingest the nib. Should there be a copy or retain here?
NSArray *topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"RandomStripe" owner:self options:nil];
// Pull the view from the nib. Should there be a copy or retain here?
MyView *view = (MyView *)[topLevelObjects objectAtIndex:0];
// The view has a label as it's subview
UILabel *pageNumberLabel = [view.subviews objectAtIndex:0];
pageNumberLabel.text = [NSString stringWithFormat:@"%d", viewTag];
CGFloat xOffset = ((float) viewTag) * self.scrollView.bounds.size.width;
view.frame = CGRectMake(xOffset, 0, self.scrollView.bounds.size.width, self.scrollView.bounds.size.height);
view.tag = viewTag;
// Insert the view as a child of my containerView
[self.containerView addSubview:view];
} // for (pageSet)
これは私の頭を今しばらくの間傷つけていますか?
乾杯、ダグ