Ich versuche, das folgende zu werfen, aber kommt immer mit dem folgenden Fehler auf.UICollectionViewLayout Unterklasse in Unterklasse umwandeln
Ich versuche, die Objective-C-Version der folgenden zu erreichen, der gut arbeitet:
LSSwipeToDeleteCollectionViewLayout
ist eine Unterklasse von UICollectionViewFlowLayout
und wird in Ziel C geschrieben
Objective C:
LSSwipeToDeleteCollectionViewLayout *layout = (LSSwipeToDeleteCollectionViewLayout *)self.collectionView.collectionViewLayout;
Swift:
let layout : LSSwipeToDeleteCollectionViewLayout = (self.collectionView.collectionViewLayout as AnyObject) as! LSSwipeToDeleteCollectionViewLayout
layout.swipeToDeleteDelegate = self
Wert des Typs 'UICollectionViewFlowLayout' (0x111edda00) konnte nicht in 'LSSwipeToDeleteCollectionViewLayout' (0x11040e3c0) umgewandelt werden.
Hallo, was meinst du mit dem zweiten Teil deiner Antwort? –
Wenn Sie eine Auflistungsansicht erstellen, müssen Sie die für das Layout verantwortliche Klasse festlegen, und es muss ein 'LSSwipeToDeleteCollectionViewLayout' sein oder Sie erhalten die Standardklasse 'UICollectionViewFlowLayout', was wahrscheinlich der Grund ist, warum Ihre Typumwandlung fehlschlägt. Sie legen die Layoutklasse entweder in Ihrer Schreibweise oder direkt im Code als Argument für den Initiator 'UICollectionView' fest, je nachdem, wie Sie die Sammlungsansicht erstellen. – par