不要使用reload collectionViewCell关闭键盘

时间:2014-07-14 17:17:30

标签: ios uicollectionview uicollectionviewcell

我有UICollectionView个自定义单元格,里面有UITextView。 用户可以点击文本字段内的任何文本。当文本字段的高度大于单元格的大小时,单元格会建议集合视图重新加载。

-(void)updatedCell:(UICollectionViewCell*)cellToUp{

    NSIndexPath *indexPath = [self.collectionView indexPathForCell:cellToUpdateSize];

    BOOL animationsEnabled = [UIView areAnimationsEnabled];
    [UIView setAnimationsEnabled:NO];
    [self.collectionView reloadItemsAtIndexPaths:[NSArray arrayWithObject:indexPath]];
    [UIView setAnimationsEnabled:animationsEnabled];

}

问题是,当单元格正在“重新加载”时,键盘将被解除并再次显示,而没有任何与之关联的文本字段。 有没有解决方法可以避免解雇键盘?

提前致谢。

2 个答案:

答案 0 :(得分:2)

您可以在UICollectionView上覆盖重新加载功能。

类似的东西:

[super reloadData];
[textView becomeFirstResponder];

答案 1 :(得分:-1)

您好,您可以使用\w方法[a-zA-Z0-9_]修改相关单元格的高度,而无需重新加载单元格。像这样的代码

UICollectionView

希望得到这个帮助。