重新加载UITableView会重置视图的子视图

时间:2013-09-27 07:51:47

标签: ios objective-c uitableview

我的视图控制器有一个UITableView,我的应用程序是一个聊天应用程序,其中表加载新的聊天。所以我添加了一个文本字段,当按下它时,它会越过键盘,以便用户可以看到它。现在,当文本字段向上移动并且新的聊天可用并且表格视图重新加载时,文本字段会下降到它所在的原始位置,并且键盘仍在其中,因为文本字段没有重新签名。当我重新加载表格视图时,如何防止我的视图的子视图重置为其原始设置?

编辑:文本字段未添加到单元格。该视图有一个UITableView,我调整大小以保留底部文本字段的空间。

2 个答案:

答案 0 :(得分:2)

除非你已经完成了,否则我建议使用常规UIViewController作为“主机”进行常规视图。在其中你有文本文件和其他可能需要的东西。并且您有一个表视图应该驻留的容器视图。在该容器中,您可以嵌套UITableView及其控制器。通过这样做,重新加载和其他表操作任务(如添加或删除单元格等)不会影响托管视图的布局。

答案 1 :(得分:2)

如果您的应用是聊天应用,我想您的UITableView末尾有您的应答字段。

所以只需添加一个页脚,包含你的字段。 调整页脚大小不应该弄乱你的所有细胞。

tableView.tableFooterView = ...

然后您不需要调整表格大小,因为该字段是其中的一部分(它位于您的tableview的滚动视图中)