如何解决 Swift 警告:"Constant 'value' inferred to have type 'AnyClass?' (aka 'Optional<AnyObject.Type>'), which may be unexpected"?
How to solve Swift warning: "Constant 'value' inferred to have type 'AnyClass?' (aka 'Optional<AnyObject.Type>'), which may be unexpected"?
无法弄清楚为什么编译器会抛出此警告
知道如何解决吗?
func configure(with classesReuseRegistry: [String: AnyClass?]) {
var collectionView = UICollectionView() // Temp collection var for testing purposes
for (key, value) in classesReuseRegistry {
collectionView.register(value, forCellWithReuseIdentifier: key)
}
}
我也想澄清一下,这个警告以前没有出现过。我在 this library 上有类似的代码,这从来都不是问题。
您可以通过将代码修改为以下方式来消除警告:
func configure(with classesReuseRegistry: [String: AnyClass?]) {
var collectionView = UICollectionView() // Temp collection var for testing purposes
for classDict in classesReuseRegistry {
collectionView.register(classDict.value, forCellWithReuseIdentifier: classDict.key)
}
}
我认为警告是由于 AnyClass
作为字典值的类型别名,而不是像 Int、String、...
这样的值类型引起的
无法弄清楚为什么编译器会抛出此警告
知道如何解决吗?
func configure(with classesReuseRegistry: [String: AnyClass?]) {
var collectionView = UICollectionView() // Temp collection var for testing purposes
for (key, value) in classesReuseRegistry {
collectionView.register(value, forCellWithReuseIdentifier: key)
}
}
我也想澄清一下,这个警告以前没有出现过。我在 this library 上有类似的代码,这从来都不是问题。
您可以通过将代码修改为以下方式来消除警告:
func configure(with classesReuseRegistry: [String: AnyClass?]) {
var collectionView = UICollectionView() // Temp collection var for testing purposes
for classDict in classesReuseRegistry {
collectionView.register(classDict.value, forCellWithReuseIdentifier: classDict.key)
}
}
我认为警告是由于 AnyClass
作为字典值的类型别名,而不是像 Int、String、...