我有一个实现UICollectionViewDelegate协议的类。
我正在使用rac_signalForSelector:注册这样的选择:
[self rac_signalForSelector:@selector(collectionView:didSelectItemAtIndexPath:)]
但只有当我离开collectionView的一个空实现时才会触发:didSelectItemAtIndexPath:像这样:
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath {
// Empty
}
我尝试使用rac_signalForSelector:fromProtocol:没有运气。
我正在使用Reactive Cocoa 2.2.4
谢谢, 的Mikkel
答案 0 :(得分:18)
确保在之前调用-rac_signalForSelector:
,将对象设置为委托。在设置委托对象时,某些Apple框架将检查您的类是否响应某个委托方法选择器,并缓存该信息,因此如果您尚未在此时调用-rac_signalForSelector:
并且未明确指定实现该方法,这些委托方法将永远不会被调用。