XCode 8,有些方法消失了吗? 例如:layoutAttributesClass() – > AnyClass
我在Xcode 8 + Swift 3项目上遇到了关于collectionView和collectionViewLayout的一些问题。
似乎有些方法完全消失了。
例如,当我将UICollectionViewFlowLayout子类化时:
override func layoutAttributesClass() -> AnyClass
这会触发xcode错误:
Method does not override Any Method from his superclass
此方法的文档: https : //developer.apple.com/library/ios/documentation/UIKit/Reference/UICollectionViewLayout_class/index.html#//apple_ref/occ/clm/UICollectionViewLayout/layoutAttributesClass
不确定它是否与Xcode 8相关,因为我已经在Xcode 7和swift 2.3上的collectionView上遇到了奇怪的问题,例如,在xcode上没有检测到itemSizeAtIndexPath方法,但是如果我将该方法放在collectionViewController中,即使没有关键字覆盖,也会调用它。
在Swift 3中,它是(类) 属性而不是方法:
override class var layoutAttributesClass: AnyClass { // ... }