Swift中Block的使用
在Swift中,可以用闭包代替OC中的Block。
1.首先在B中声明一个闭包,然后把闭包声明成属性:
import UIKit typealias collectionViewblcok = (String) ->() class CollectionViewController: UIViewController, UICollectionViewDataSource, UICollectionViewDelegate {
2.在B中,选中部分为按钮点击事件:
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) { clickCollectionView!("点击collectionView") }
3.在A中,写法为选中部分:
//weak var weakSelf = self let collectionVC = CollectionViewController() collectionVC.clickCollectionView = {(param) ->()in } self.navigationController?.pushViewController(collectionVC, animated: true)`