调用viewForSupplementaryElementOfKind后关闭键盘

时间:2015-11-18 20:11:12

标签: ios swift keyboard uicollectionview

我正在UISearchController中实施UICollectionView,我在viewDidLoad中定义了搜索控制器以设置搜索结果更新:

searchControllerCollection.searchResultsUpdater = self

这是searchResultsUpdater方法:

  func updateSearchResultsForSearchController(searchController: UISearchController)
    {
        ....
        self.CollectionView.reloadData()
    }

这是viewForSupplementaryElementOfKind方法:

func collectionView(collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, atIndexPath indexPath: NSIndexPath) -> UICollectionReusableView {

    var header : UICollectionReusableView!

    if (kind == UICollectionElementKindSectionHeader) {

        header = self.CollectionView.dequeueReusableSupplementaryViewOfKind(kind, withReuseIdentifier: "cell", forIndexPath: indexPath)

        header.addSubview(searchControllerCollection.searchBar)

    }

    return header

}

当我点击搜索控制器时发生问题,然后它调用updateSearchResultsForSearchController然后它重新加载CollectionView然后它在结束时调用viewForSupplementaryElementOfKind并且搜索控制器的键盘被解除并且搜索控制器仍然是(我可以说键盘正在显示1秒钟并被解雇,有时在写完一个字母之后,因为它调用了CollectionView来重新加载数据)。如何保持键盘显示?无论如何都要避免再次呼叫viewForSupplementaryElementOfKind

0 个答案:

没有答案