0
質問は、特定のクラスがスウィフトにプロトコルに準拠することを許可する
私は唯一の特定のクラスで実装することができ、プロトコルを作成したいと思います。
例
クラスのみA
がそれに適合することができるようにのは、プロトコルX
がある、としましょう:
A:X
すべてX
はA
ですが、すべてのA
はX
ではありません。
具体例
IはCellClass
を定義
CollectionViewCell
ディスクリプタを作成したい
そのコントローラに適切な細胞に記述reuseIdentifier
および任意value
パス:
プロトコル
protocol ConfigurableCollectionCell { // Should be of UICollectionViewCell class
func configureCell(descriptor: CollectionCellDescriptor)
}
C
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let descriptor = dataSource.itemAtIndexPath(indexPath)
let cell = collectionView.dequeueReusableCellWithReuseIdentifier(descriptor.reuseIdentifier, forIndexPath: indexPath) as! ConfigurableCollectionCell
cell.configureCell(descriptor)
return cell as! UICollectionViewCell
}
ontroller今私はConfigurableCollectionCell != UICollectionViewCell
として、エラーを取り除くためにキャストを強制する必要があります。
なぜサブクラス? – Wain