UITableView.SizeThatFits()的大小错误

时间:2011-11-07 09:22:24

标签: ios uitableview xamarin.ios

我实现了一个UIPopoverController,它充满了一个分组的UITableView。只要弹出窗口不可见,表格视图中的单元格数就可以动态变化。一旦弹出窗口变得可见,单元格的数量就会固定。

当弹出窗口变为可见时,我将弹出窗口内容的大小调整为表格视图的高度。我使用UITableView中的SizeThatFits()方法获取表大小,并使用此值设置popoverContentSize高度。

这在应用程序运行时运行正常。但总是第一次在应用程序重新启动后显示弹出窗口时,SizeThatFits()提供了错误的高度(大约60像素到高)。有谁知道这个问题可能是什么?

2 个答案:

答案 0 :(得分:3)

我有一个类似的问题,因为我在ViewDidLoad中执行计算。我能够通过在视图的代码中创建一个bool标志来解决这个问题,并且只在未设置标志的情况下在ViewDidAppear中执行计算(当然,设置标志以便每次都不重复逻辑)。

答案 1 :(得分:1)

在iOS 5及更高版本中,在viewDidLayoutSubviews UIViewController方法中调用时,UITableView上的sizeThatFits会给出正确的结果。