OS3.1中的iPhone键盘问题

时间:2009-09-15 18:00:43

标签: iphone keyboard iphone-softkeyboard

我遇到的问题刚刚开始在OS 3.1中发生。

我在自定义UITableViewCell中有一个UITextField。在didRotateFromInterfaceOrientation中,我调用reloadData来重新加载tableview以调整单元格的大小。 发生的问题是:如果您正在编辑该UITextField中的文本并使键盘向上,然后旋转手机,键盘将旋转但无法正常工作。然后,如果你向后旋转,你会得到两个键盘,一个在另一个上面。我已经确定它是旋转手机和调用'reloadData'的组合,导致键盘停止运行。

这种情况发生在模拟器和手机上。它只发生在OS3.1中。我尝试在OS3.0中编译,问题不会发生。

有什么想法吗?感谢。

-(void) didRotateFromInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation{
    [self.tableView reloadData]; 
}

3 个答案:

答案 0 :(得分:0)

我同意Gordon提交bug报告以防万一。

在此之前,你可能最好在调用reloadData之前辞去所有第一响应者(从而摆脱键盘)。

答案 1 :(得分:0)

没有解决方案。所以,我的解决方法是在重新加载表格视图之前重新签名键盘。

答案 2 :(得分:0)

要避免这种情况,请在自定义单元格和重新布局中实现layoutSubviews :,不要使用reloadData:。 (OS 3.1.2)