UIPopOverView 问题中的 TableView
Posted
技术标签:
【中文标题】UIPopOverView 问题中的 TableView【英文标题】:TableView in UIPopOverView Issue 【发布时间】:2014-11-08 09:51:46 【问题描述】:我在 UIPopover 有问题,我在 UIPopover 中添加了 UITableView
当我在 ios7.* 中运行良好时如下:
但是当我在 iOS8 中运行时,它显示如下:
我的代码如下
CustomPopOverViewController *viewControllerForPopover =
[self.storyboard instantiateViewControllerWithIdentifier:@"CustomPopOverVC"];
viewControllerForPopover.delegate = self;
int setTimeFlag = [[[selectedModuleProgram objectAtIndex:[sender tag]] valueForKey:kProgram_Mst_Program_Time_Flag] intValue];
if (setTimeFlag == 1)
[viewControllerForPopover setListType:kListType_AddProgramOptions];
viewControllerForPopover.preferredContentSize = CGSizeMake(333, 453);
else
[viewControllerForPopover setListType:kListType_AddProgramOptionsWOA];
viewControllerForPopover.preferredContentSize = CGSizeMake(333, 382);
self.popover = [[UIPopoverController alloc]
initWithContentViewController:viewControllerForPopover];
self.popover.popoverBackgroundViewClass = [CustomPopoverBackgroundView class];
[self.popover presentPopoverFromRect:anchor.frame
inView:anchor.superview
permittedArrowDirections:UIPopoverArrowDirectionLeft | UIPopoverArrowDirectionRight animated:YES];
在我的代码中 CustomPopOverViewController 属于我的 UIViewController 并且我有一个 tableview。
我已经设置了一个tableview的框架如下:
tblViewList.frame = CGRectMake(tblViewList.frame.origin.x, tblViewList.frame.origin.y, tblViewList.frame.size.width, (72*[arrData count]));
不要选择所有选项。
【问题讨论】:
你能展示你的代码吗? iOS 7 上的preferredContentSize 是否可能是(333, 453) 而iOS 8 上的preferredContentSize 是(333, 382)? 您的 arrData 计数是否正确?正如我所见,它设置了你的身高.. 是的,它是正确的..我调试它。 【参考方案1】:我找到了解决方案,
我只是禁用 自动布局视图,我工作正常。
我在搜索时了解到,如果 autolayout 已启用,view.frame = cgrectmake(), 在 ios8 中不起作用..
谢谢。
【讨论】:
以上是关于UIPopOverView 问题中的 TableView的主要内容,如果未能解决你的问题,请参考以下文章
如何将 UIPopoverView 显示为地图视图的注释? (iPad)
UIPopoverview for iPhone,iOS 7