我在我的iPhone应用程序中显示了WEPPopoverController
。在该WEPPopoverController中,我添加了一个UITableViewController
。我正在使用此弹出窗口进行搜索。
现在,当我打开此Popover时,屏幕如下所示:
现在,我想从UITableViewController's
didSelectRowAtIndexPath
中关闭此Popover,
这该怎么做?
码:
self.searchTableViewController = [[SearchTableViewController alloc] initWithStyle:UITableViewStylePlain]; // UITableViewController
self.seachPopoverController = [[[WEPPopoverClass alloc] initWithContentViewController:self.searchTableViewController] autorelease]; // WepPopoverController
self.seachPopoverController.delegate = self;
[self.seachPopoverController presentPopoverFromRect:[searchB frame] inView:topPanelV permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];
提前致谢!!!
最佳答案
在SearchTableViewController中添加1个变量作为父对象,例如
id parent;
为此创建属性
@property (nonatomic,assign)id parent;
合成它
@synthesize parent;
现在
当您创建
self.searchTableViewController
时将其父代指定为
self.searchTableViewController.parent = self;
现在在didSelectRowAtIndex中
[parent dismisMyPopoverMethod];
-(void)dismisMyPopoverMethod
{
[self.seachPopoverController dismissPopoverAnimated:YES];
self.seachPopoverController = nil;
}
就是这样。大功告成