2015-08-12 9 views
8

Ho un UITableViewCell personalizzato (.h, .m, .xib) registrato in UITableView.Conflitto in UIGestureRecognizer in cella personalizzata e dequeueCellWithIdentifier

Ora ho bisogno di usare un UIImage personalizzato all'interno della cella e allego un Gesture Recognizer (non riesco a usare un UIButton). Il problema è che se in fase di esecuzione ottengo un

Terminating app due to uncaught exception 'NSInternalInconsistencyException', 
reason: 'invalid nib registered for identifier (CustomCell) - 
nib must contain exactly one top level object which must be a UITableViewCell instance' 

Se rimuovo il gesto della cellula funziona correttamente, credo che sia un bug di cacao, io ora tenta di creare un'istanza a livello di codice, ma credo che il problema è che il sistema di riconoscimento gesto è sullo stesso livello herarchy del TableViewCell nel XI ter

enter image description here

sai altra soluzione costruttore di interfaccia?

+0

Ho incontrato la stessa cosa. Avete ulteriori scoperte? – nickcheng

+0

@nickcheng no, ma ci sono molte altre domande sollevate con lo stesso problema che non ho notato, nessuna con una risposta. Immagino che sia un difetto o fatto apposta per evitare i gesti su una vista tabella (che ha già un gesto). In ogni caso, non è giustificabile: / – jalone

risposta

5

Abilitazione interazione con l'utente sulla UIImage e l'aggiunta di codice un riconoscitore gesto nel awakeFromNib lavori

UITapGestureRecognizer * tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleImageTap:)]; 
tap.cancelsTouchesInView = YES; 
tap.numberOfTapsRequired = 1; 
tap.delegate = self; 
[self.imagePicture addGestureRecognizer:tap]; 

ma mi piacerebbe sapere il motivo per cui non sta funzionando piuttosto. Aspetterò per accettare

Problemi correlati