动画UITableView高度更改

时间:2012-10-30 14:25:42

标签: uitableview uiviewanimation

我正在使用下面的代码来动画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];

它按预期工作除了一件事,一旦动画开始,表格视图上半部分的单元格就会消失。

动画开始前: enter image description here

动画开始后: enter image description here

值得一提的是,表格视图是UIBubbleTableView

的一个实例

2 个答案:

答案 0 :(得分:0)

我试图重现你的问题,但不能。在任何情况下,我刚刚将UIBubbleTableView的扩展示例提交到github中,它完成了你要做的事情,到目前为止一切看起来都不错,请看看最新的提交(https://github.com/AlexBarinov/UIBubbleTableView/commit / bc0dc5b151241c4ae476c894e23800156e9709a8)

如果您仍有问题,请随时向github跟踪器添加问题或与我联系以提供您认为不适用于调查的来源。电子邮件在github个人资料中可用。

答案 1 :(得分:-1)

那是因为你永远不会初始化那些细胞。