2013-10-08 17 views
18

Sto avendo qualche problema con VoiceOver attivato a partire dal iOS 7. I si è registrato un caso di UITableViewHeaderFooterView classe bambino dentro viewDidLoad ma quando sto dequeque-ing con -[tableView dequeueReusableHeaderFooterViewWithIdentifier:] esso è sempre restituendo l'oggetto nil.UITableView dequeueReusableHeaderFooterViewWithIdentifier ritorna nil con VoiceOver su iOS 7

Il problema ha iniziato a comparire su iOS 7.0. Non era presente nella versione precedente e sicuramente funziona bene se funziona perfettamente senza VoiceOver sia su 6.0 che su 7.0

Non potrei semplicemente avere un'intestazione personalizzata, o creare un'istanza di un nuovo oggetto quando dequeueReusableHeaderFooterViewWithIdentifier: restituisce zero. Ma mi stavo chiedendo se c'è un problema noto a riguardo.

Cheers,

+0

hai preso più informazioni su questo? per me, non torna mai nil mai, nemmeno la prima volta che colpisce dequeueReusableHeaderFooterViewWithIdentifier :, invece restituisce il tableviewheader con frame (0,0,0,0) – ManicMonkOnMac

+0

Uno dei miei colleghi ha parlato con uno sviluppatore Apple durante uno dei Tech Talk e hanno detto che ci potrebbe essere qualche problema con quello e stanno cercando in esso :) Alla fine, quando ho ottenuto nulla, ho solo istanziare la vista dalla NIB e restituire quella invece. – Rpranata

+1

Penso che caricare il pennino da solo e restituire l'oggetto cella sia la soluzione migliore. Ho appena finito di farlo oggi, e sembra che venga chiamato init/initWithFrame della cella di intestazione, che ignora il file pennino. Quindi, si finisce con una cella che non ha nessuna delle sue prese collegate. –

risposta

0

È possibile utilizzare sotto metodo per creare personalizzato UITableViewHeaderFooterView

(void)registerClass:(Class)aClass forHeaderFooterViewReuseIdentifier:(NSString *)identifier