在 UIPopoverController 中显示 UItableViewController

Posted

技术标签:

【中文标题】在 UIPopoverController 中显示 UItableViewController【英文标题】:Displaying UItableViewController inside UIPopoverController 【发布时间】:2011-08-17 11:46:46 【问题描述】:

我在 UIPopoverController 中显示 UITableViewController。一切正常,即使 TableViewController 的大小非常大,即使只有 3-4 个单元格。如何使弹出框控制器的高度与 tableview 的高度完全相同?

【问题讨论】:

【参考方案1】:

您可以使用UIPopoverController 的方法- (void)setPopoverContentSize:(CGSize)size animated:(BOOL)animated 或使用UIViewController @property(nonatomic, readwrite) CGSize contentSizeForViewInPopover 上的属性来实现此目的。

【讨论】:

【参考方案2】:

像这样覆盖UITableViewControllercontentSizeForViewInPopover

- (CGSize)contentSizeForViewInPopover 
    // Currently no way to obtain the width dynamically before viewWillAppear.
    CGFloat width = 200.0; 
    CGRect rect = [self.tableView rectForSection:[self.tableView numberOfSections] - 1];
    CGFloat height = CGRectGetMaxY(rect);
    return (CGSize)width, height;

【讨论】:

以上是关于在 UIPopoverController 中显示 UItableViewController的主要内容,如果未能解决你的问题,请参考以下文章

在 UIPopOverController 中显示 Master/Detail UITableView

无法在 UIPopoverController 中显示视图控制器

如何在 iPhone 上的 UIPopoverController 中显示 NavigationController-background

想要在 UIAlertController 或 UIPopoverController Swift 中显示 UIPickerView?

ios8中iphone的UIPopoverController显示白屏

UIPopoverController backgroundColor 在显示时导致闪烁