我正在使用下面的代码对 UITableView 高度变化进行动画处理,以响应键盘出现/消失。
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.25];
[UIView setAnimationBeginsFromCurrentState:YES];
CGRect tableFrame = self.messagesTableView.frame;
if (UIInterfaceOrientationIsPortrait(self.interfaceOrientation)) {
tableFrame.size.height -= kKeyboardHeightPortrait;
} else {
tableFrame.size.height -= kKeyboardHeightLandscape;
}
self.messagesTableView.frame = tableFrame;
[UIView commitAnimations];
它按预期工作,除了一件事,动画一开始,表格视图上半部分的单元格就会消失。
动画开始前:
动画开始后:
还值得一提的是,table view 是UIBubbleTableView的一个实例