2012-10-01 18 views
24

Errore di asserzione durante lo scorrimento di una vista di selezione con dati zero (zero righe). Mentre faccio scorrere la vista del selettore, sto andando in crash. Test su iOS 6Errore asserzione nella vista di selezione

* errore di asserzione in - [UITableViewRowData rectForRow: inSection:], /SourceCache/UIKit_Sim/UIKit-2372/UITableViewRowData.m:1630

* terminazione app a causa di eccezione non identificata 'NSInternalInconsistencyException', la ragione: 'richiesta di rect al percorso indice non valido (2 indici [0, 0])'

Ogni aiuto è apprezzabile.

+1

Questo in realtà mi è appena apparso quando tutti hanno iniziato l'aggiornamento a iOS6. Ho avuto zero crash relativi a questo prima del rilascio di iOS. – iwasrobbed

+0

Posso confermare che è solo iOS 6. iOS 5 non si arresta in modo anomalo con una vista di selezione vuota. – Vinnie

+0

Phew. Aha ... Mi chiedevo perché la nostra app improvvisamente avesse iniziato a schiantarsi dappertutto. Grazie sopra commentatori per aver notato! – Kalle

risposta

39

Ho lo stesso problema

Non so motivo per cui è accaduto,

ma può essere fissato in iOS6 (come funziona in iOS5 non ho controllato):

- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component 
{ 
    if ([self getCount] == 0) 
     return 1; 
    return [self getCount]; 
} 

- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent: (NSInteger)component reusingView:(UIView *)view { 
    if ([self getCount] == 0) 
     return nil; 
} 
+1

Questo ha fatto il trucco, grazie ... strano, mi chiedo se si tratta di un bug nel framework –

+1

@INT: È un bug? – Manoj

+0

Deve essere ... sembra strano dover restituire 1 quando è vuoto – iwasrobbed

0

La risposta è in realtà molto semplice! Dopo aver avuto qualche problema con me stesso, ho scoperto che è necessario impostare il delegato e il dataSource sul controller della vista a cui è connessa la vista del selettore.

+1

Con il delegato e l'origine dati non sarà mai in grado di delegare i metodi di esso. – Madhu

Problemi correlati