在 iOS 6 中,我在我的应用程序中UITableView
创建了 using QuickDialog
。它正常滚动。当我切换到 iOS 7 时,同样UITableView
无法正常滚动。我可以拖动到底部(滚动条压缩),但是当我释放时,它会弹回到顶部。我一直在viewDidAppear
尝试诊断问题。请参阅下面的代码块。
-(void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
NSLog(@"Content height: %f",self.quickDialogTableView.contentSize.height);
[self.quickDialogTableView reloadData];
NSLog(@"Content height: %f",self.quickDialogTableView.contentSize.height);
[self.quickDialogTableView layoutIfNeeded];
NSLog(@"Content height: %f",self.quickDialogTableView.contentSize.height);
}
这个块在 iOS 7 中的输出是
Content height: 0.000000
Content height: 836.000000
Content height: 0.000000
同时,这个块在 iOS 6(模拟器)中的输出是
Content height: 836.000000
Content height: 836.000000
Content height: 836.000000
为了尝试诊断问题,我设置了一个按钮来触发[self.quickDialogTableView reloadData]
. 每当按下该按钮时,滚动行为就会开始正常运行。然后当我离开视图并返回时,滚动再次失败(直到按下按钮)。为了清楚起见,我试图自己放入 a reloadData
(viewWillAppear
即,删除上面代码块中的最后两行)并且它不能更正滚动。
我正在寻找关于我可能会在哪里纠正问题的线索。提前感谢您的帮助。