是否无法从显示为UIModalPresentationFormsheet
的视图控制器中显示弹出窗口控制器?或者我错过了什么?
此代码在非模态视图控制器上正常工作,并正确显示弹出窗口。(WEPopoverController是here的自定义实现。)
GenericDataTableViewController *genericDataController = [[GenericDataTableViewController alloc] initWithNibName:@"GenericDataTableViewController" bundle:[NSBundle mainBundle]];
genericDataController.dataSource = [NSMutableArray arrayWithObjects:@"asli", nil];
genericDataController.delegate = self;
genericDataController.contentSizeForViewInPopover = CGSizeMake(300, 46 * [genericDataController.dataSource count]);
self.popoverController = [[[WEPopoverController alloc] initWithContentViewController:genericDataController] autorelease];
self.popoverController.delegate = self;
[self.popoverController presentPopoverFromRect:((UIButton *)sender).frame
inView:self.view
permittedArrowDirections:UIPopoverArrowDirectionUp
animated:YES];
[genericDataController release];
但是当我把它放在模态视图控制器中时,它会在模态控制器下方呈现弹出窗口,即在呈现模态控制器的视图控制器上。因此,用户无法看到它。
我该如何解决这个问题?
答案 0 :(得分:3)
问题的评论中解释了答案,但我在此总结了一个更清洁的Q& A。
如果您的弹出控制器是UIPopoverController
,那么从表单内部显示弹出控制器没有任何限制。我的问题是由于WEPopoverController
的实施。
因此,牺牲视觉体验并继续保持良好的旧UIPopoverController
。