关于重画
我在当前应用中有一个自定义布局。它由各种单元格组成,包括带有文本字段的单元格。我开始使用“字段”编辑单元格,出现键盘。然后,我按下另一个可见的愿望清单单元上的按钮,该单元将产品添加到愿望清单。添加产品后,我使布局无效,并重新加载了愿望清单单元。在所有这些操作过程中,现场单元始终是第一响应者,键盘无处可动。
但是它会重新绘制准备布局中的所有节和行,并自动关闭键盘
您确定没有呼叫reloadData()
吗?重绘内容的不是布局,而是调用reloadData()
的开发人员。
我想让键盘保持不动,直到用户点击关闭按钮。
因此,如果您从reloadData()
切换到batch updates-键盘将保持不变。
关于调整大小
使布局无效时,将为单元格准备新的属性。具有新尺寸/框架的属性。但是数据源是相同的。这意味着UICollectionView
只会移动单元格,但不会重新加载它们。您无需重新加载任何内容!只是无效并提供新属性。现场单元会自动增长。
示例
在关于重画中,我描述了重装愿望盒的方式。另外,我添加了字段属性大小更改。现在您可以看到键盘仍然保留,并且现场单元格的大小发生了变化。现在看起来是这样的:
所以,我相信,您只需要进行布局即可。可以实现所需的行为。祝您好运,编码愉快(:
本文链接:https://www.f2er.com/3125780.html