2011-04-06 4 views
0

Popover를 사용하여 이미지를 표시했습니다. 사용자가 버튼을 터치하면 popover가 슬라이드 쇼와 함께 나타납니다.UIPopoverController deallocated issue

가 나는 팝 오버과 같이 초기화 :`

- (IBAction)showPopover:(UIButton *)sender { 
    myPopover *content = [[myPopover alloc] init]; 
    detailViewPopover = [[UIPopoverController alloc] initWithContentViewController:content]; 
    detailViewPopover.popoverContentSize = CGSizeMake(600., 400.); 
    detailViewPopover.delegate = self; 

    [detailViewPopover presentPopoverFromRect:sender.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES]; 

    [content release]; 
} 

` detailViewPopover가 UIPopoverController, 나는 내 .H 선언합니다.

나는이 같은 팝 오버를 기각`

- (void)popoverControllerDidDismissPopover:(UIPopoverController *)popoverController { 
    // If a popover is dismissed, set the last button tapped to nil. 
    [popoverController release]; 

} 내 응용 프로그램을 실행하면 내가 가진 때까지`

가 작동 "- [UIPopoverController 자료] : 할당이 해제 된 인스턴스 0x1b29b0에 보낸 메시지" 내 애플 리케이션이 충돌 ... 나는 내 UIPopoverController 너무 많은 시간을 릴리스 이해하지만, 난 모르겠어요. 내 구현이 좋습니까?

이 나를 좀 더 자세한 정보가 필요하면 알려 주시기 바랍니다 당신의 도움에 대한

덕분에, 나는 포스트

답변

1

당신은 여기 popoverController를 공개하지 말아야을 편집합니다.

당신은 현재보기 컨트롤러의 dealloc 방법

- (void) dealloc 
{ 
    [detailViewPopover release]; 
    [super dealloc]; 
} 
+0

순서는 중요에서 detailViewPopover에 릴리스를 호출 할 필요가? "[super dealloc];을 호출하면 전에 작동하지 않습니다. – Mitch

+0

예, 클래스에 대한 참조를 포함하여 수퍼 클래스가 모든 참조를 해제하도록하는 것이 중요합니다. – JFoulkes

+0

감사합니다. 내가 UIPopoverController에 할당 취소 문제를 해결하지만 내 UIButton과 동일한 문제가있어 내 xib 파일에 내 버튼에서 오는 것 같아요 ... 다시 한번 감사드립니다 – Mitch