1

我是stackoverflow和objective c的新手,所以请提前原谅我:)

我有一个 UIcollectionView,当单击“添加文件夹”时显示一个虚拟文件夹列表,一个单元格被添加到集合中。该单元格内部有一个 UITextField,我制作了 FirstResponder,它会弹出虚拟键盘,用户可以编辑文件夹的名称。在我添加的每个文件夹上都很好用。

问题是当用户点击文件夹时。

我确实 reloadData 到 CollectionView (因为我现在想显示点击文件夹的内容),之后我添加的每个文件夹都不会弹出虚拟键盘,并且 UITextField 不会成为第一响应者?

有人知道为什么会这样吗?

另一个有趣的事情是,当我点击集合(一个没有单元格的空白区域)然后尝试创建一个新文件夹时,键盘返回..

4

1 回答 1

1

我的问题是我的 UITextField 位于单元格本身上,而 UICollectionView 正在使用可重复使用的单元格。所以每次我给我一个不同的单元格(一个可用的现有单元格和一个新的单元格时)并且无法找到将我的 becomeFirstRisponder 发送到哪里。我通过在创建时为每个单元格提供一个唯一标识符并在发送 becomeFirstRisponder 命令时寻找正确的标识符来解决它。

于 2012-12-05T16:39:45.907 回答