我遇到的问题刚刚开始在OS 3.1中发生。
我在自定义UITableViewCell中有一个UITextField。在didRotateFromInterfaceOrientation中,我调用reloadData来重新加载tableview以调整单元格的大小。 发生的问题是:如果您正在编辑该UITextField中的文本并使键盘向上,然后旋转手机,键盘将旋转但无法正常工作。然后,如果你向后旋转,你会得到两个键盘,一个在另一个上面。我已经确定它是旋转手机和调用'reloadData'的组合,导致键盘停止运行。
这种情况发生在模拟器和手机上。它只发生在OS3.1中。我尝试在OS3.0中编译,问题不会发生。
有什么想法吗?感谢。
-(void) didRotateFromInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation{
[self.tableView reloadData];
}
答案 0 :(得分:0)
我同意Gordon提交bug报告以防万一。
在此之前,你可能最好在调用reloadData之前辞去所有第一响应者(从而摆脱键盘)。
答案 1 :(得分:0)
没有解决方案。所以,我的解决方法是在重新加载表格视图之前重新签名键盘。
答案 2 :(得分:0)
要避免这种情况,请在自定义单元格和重新布局中实现layoutSubviews :,不要使用reloadData:。 (OS 3.1.2)