代码之家  ›  专栏  ›  技术社区  ›  Steve

UITableView中包含UITextFields的单元格消失的奇怪问题

  •  0
  • Steve  · 技术社区  · 14 年前

    屏幕在UITableView中显示一些数据,并提供“编辑”按钮。

    当用户按下“编辑”按钮时,UITableView将显示“编辑模式”下的数据。

    “查看模式”中的字段与“编辑模式”中的字段之间没有1:1的关系。例如,“视图模式”单元格可能包含“John Doe”这样的名称,而编辑模式可能有两个单元格,一个用于“名字”,一个用于“姓氏”。

    “编辑模式”中的单元格在左侧包含一个标签,在右侧包含一个UITextField(就像contacts一样)。

    所有这些都很有效。没问题。调整键盘和一切。我喜欢。

    如果在UITextField仍然是第一响应者时,用户按下“完成编辑”按钮,表格动画返回“查看模式”,并且用户重新进入“编辑模式”,其中一个uitableViewCell将丢失(随机,因为它们被重用)。

    我的理论是有些东西没有被正确地释放出来,这导致了细胞重用机制以某种方式被打破。。。但我敢肯定这不是我的代码本身的问题。

    我的问题是;有人见过这个吗?这是已知的问题吗?

    当用户单击“完成编辑”按钮时,我可以强制任何UITextField firstResponder退出,方法是使我的视图成为firstResponder(这确实解决了问题)。。。但我有点惊讶我会这么做。我想我是想确认我是否疯了。

    谢谢

    1 回复  |  直到 14 年前
        1
  •  0
  •   Steve    14 年前

    看来没人有答案,所以:

    强迫UITextField辞去第一响应者的职务,问题就消失了。