1
ARC에 몇 가지 문제가 있습니다. 나는 배수보기를 ScrollView에 추가하려고합니다. 사용자가 하나의보기를 탭하면 작업이 호출됩니다. ARC - 여러 하위보기 삽입 및 작업 처리
그러나 사용자는 I이 메시지가보기 탭 : 이어떻게 내가보기를 유지할 수 "할당이 해제 된 인스턴스에 보낸 메시지를?" 당신은 당신의 ViewController의 모든 ChannelViewController 인스턴스에 대한 참조를 보유 할 필요가
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
int i;
for (i=0;i<10;i++) {
ChannelViewController *channelView = [[ChannelViewController alloc] init];
[channelView.view setFrame:CGRectMake(i*175, 0, 175, 175)];
//channelsScrollView is a ScrollView
[self.channelsScrollView addSubview:channelView.view];
}
[self.channelsScrollView setContentSize:CGSizeMake(i*175, 175)];
}
나는 비슷한 것을보고 있지만 왜 이것이 필요한지 이해할 수 없습니다. 카즈키는'[self.channelsScrollView addSubview : channelView.view]'를 호출하므로'self.channelsScrollView'는 이제'channelView.view'에 대한 참조를 보유합니다. UIView 자체 컨트롤러에 대한 참조를 보유하고 있습니까? 이상하게 보입니다. –
UIView가 내부적으로 UIViewController에 대한 참조를 보유하고 있는지 여부는 알 수 없지만 유지 관리주기가 발생하지 않도록 약한 참조 여야합니다. – barley
아, 좋은 지적, 고마워. –