所以我有在它的按钮酥料饼。当该按钮被按下时,我想酥料饼走开。这似乎很容易,但我无法弄清楚了我的生活。我用来显示酥料饼的代码如下:

    AddCategoryViewController* content = [[AddCategoryViewController alloc] init];
 UIPopoverController* aPopover = [[UIPopoverController alloc]
          initWithContentViewController:content];
 aPopover.delegate = self;
 [content release];

 // Store the popover in a custom property for later use.
 self.addCategoryPopover = aPopover;
 [aPopover release];
 [addCategoryPopover presentPopoverFromBarButtonItem:sender permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];

在addcategoryviewcontroller,我有:

    -(IBAction)saveAddCategory:(id)sender {
 if (rootViewController == nil)
  rootViewController = [[RootViewController alloc] init];

 [rootViewController.addCategoryPopover dismissPopoverAnimated:YES];
 [rootViewController dismissPopover];
}

RootViewController的是正在被从所创建的酥料饼的位置。不幸的是,这些方法的工作予以驳回。任何帮助?

有帮助吗?

解决方案

您将在该行看到一个警告。

 aPopover.delegate = self;

如果你执行你的代码。该应用程序会崩溃。相反,你需要做这样的这个

其他提示

- (void)viewWillDisappear:(BOOL)anAnimated
{
    [self.dPopover dismissPopoverAnimated: NO];
    self.dPopover = nil;
    [super viewWillDisappear: anAnimated];
}

和不明白为什么这样,你的情况是行不通的。

if是有点麻烦,所以我的猜测是,你不是说你认为你的看法。 rootViewController.addCategoryPopover可能是零,因为你犯了一个新的控制器。

我认为回答只是与I用于关闭与来自UIView加载MKMapView一个酥料饼的溶液类似的问题。 使用我的解决方案的基本相同,用于加载酥料饼的任何其它视图。

看一看: 如何dismissPopoverAnimated iPad上用UIPopoverController在的MKMapView(SDK3.2)。我希望你解决问题了。

使用NSNotificationCenter要DissmissPoper控制器对于父亲的viewController

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top