首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UIPopover release iOS

UIPopover release iOS
EN

Stack Overflow用户
提问于 2012-04-19 19:58:47
回答 1查看 96关注 0票数 0

我有@property(nonatomic,retain) UIPopoverController * popoverController;

我在我的实现类中创建了我的popover。

我使用的是:

代码语言:javascript
复制
- (void)createPopover:(NavigationController *)tempNavigation {

            UIPopoverController *tempPopover = [[UIPopoverController alloc] initWithContentViewController:tempNavigation];
            self.popoverController = tempPopover;
            [self.popoverController setPopoverContentSize:CGSizeMake(width, height)];
            tempPopover.delegate = self;                

            CGRect selectedRect = [self.tableView rectForRowAtIndexPath:indexPath];             
            [tempPopover presentPopoverFromRect:selectedRect inView:self.tableView permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];
            [tempPopover release];
}

在这个方法中,我需要释放弹出窗口

我使用的是:

代码语言:javascript
复制
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    if (popoverController) {
        [popoverController dismissPopoverAnimated:NO];
        self.popoverController=nil; 
        [popoverController release];
    }
    return YES;
}

我的问题是:在这个方法中释放popover的正确方式。或者我必须只在dealloc方法中释放popover?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-19 20:17:05

代码语言:javascript
复制
self.popoverController=nil;

调用setter。如果你的属性被声明为retain,这将释放之前的值并保留新的值(在本例中,它保留nil,不做任何事情)。

代码语言:javascript
复制
[popoverController release];

在popoverController上调用release,它现在是空的,不做任何事情。但是,您不应该这样做,如果它不是空的,它将被过度释放(因为下次设置popoverController属性时,也会在它上调用release )。

在设置该属性时也会出现问题

代码语言:javascript
复制
UIPopoverController *tempPopover = [[UIPopoverController alloc] initWithContentViewController:tempNavigation];
self.popoverController = tempPopover;

setter会保留该值,因此您应该自动释放它

代码语言:javascript
复制
self.popoverController = [tempPopover autorelease];

并且您应该使用ARC :)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10227560

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档