7

Ich habe eine UITableview. Einer der UITableViewCell's ist ein UICollectionview mit Instanzname "AmenityView". Die UICollectionViewDelegate und die UICollectionViewDataSource werden wie unten gezeigt in storyboard eingestellt. Die folgenden Methoden werden aufgerufen und die Daten werden wie erwartet ausgefüllt.collectionView: didSelectItemAtIndexPath: Ruft nicht

- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section 
- (UICollectionViewCell *)collectionView:(UICollectionView *)collection cellForItemAtIndexPath:(NSIndexPath *)indexPath 

enter image description here

jedoch erhalten die folgenden Methoden nicht aufgerufen haben, wenn ich wählen Sie die UICollectionViewCell im UICollectionView enthalten. Was habe ich verpasst?

-(void) collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath 
-(void) collectionView:(UICollectionView *)collectionView didDeselectItemAtIndexPath:(NSIndexPath *)indexPath 

UPDATE: return YES in diesem Verfahren wird die collectionView:shouldSelectItemAtIndexPath: unter zwei Methoden aufrufen. Zumindest fehlte das von mir. Hoffe, das hilft einem Körper ... enter image description here

+1

ist ["' .allowsSelection' "] (https://developer.apple.com/library/ios/documentation/uikit/reference/UICollectionView_class/Reference/Reference.html#//apple_ref/occ/instp/UICollectionView/allowsSelection) für Ihre Sammlungsansicht auf YES gesetzt? –

+0

@MichaelDautermann. Vielen Dank für Ihre Antwort. ".allowsSelection" ist auf "YES" gesetzt. – Loozie

+0

Funktioniert die Tabellenansichtszelle, in der sie sitzt, Benutzerinteraktion oder Auswahl der Zelle selbst? –

Antwort

1

Wird der didSelectRowAtIndexPath der Tabellenansicht aufgerufen? Wenn dies der Fall ist, fängt die Tabellenansicht möglicherweise die Berührungen ab und gibt sie nicht an die Sammlungsansicht im Inneren weiter. Ich habe die Lösung, die Sie versuchen, nie gemacht, aber die Sammlungsansicht befindet sich in einer Bildlaufansicht, und es ist möglicherweise nicht einfach, die Berührungsinformationen auf sinnvolle Weise an die Sammlungsansicht weiterzuleiten Deaktivieren des Antippens der Tabellenansichtszelle, damit die Sammlungsansicht auf Berührungen reagieren kann.

Verwandte Themen