2013-01-23 12 views
6

Sto utilizzando una vista MBProgressHUD per mostrare lo stato di caricamento quando sto scaricando qualcosa da Internet. Al termine del download, chiamo il metodo hide per nascondere la vista. Voglio usare un timer per giudicare se il download è finito controllando la vista nascosta, cioè il metodo isHidden. Ma quando imposto il nascondiglio della vista su SI, quindi verifica il metodo isHidden, restituisce NO. Non so perché la vista funziona così?perché impostare il nascondiglio di MBProgressHUD su SÌ, ma il metodo isHidden è NO?

alcuni frammenti sono i seguenti:

MBProgressHUD *HUD; // instance variable 

Nel metodo download finito:

[HUD hide:YES]; 
NSLog(@"HUD isHidden: %@",[HUD isHidden] ? @"YES" : @"NO"); 

Quando il metodo viene chiamato, l'uscita è NO.

risposta

5

Secondo l'implementazione di MBProgressHUD, non lo nascondono utilizzando la proprietà nascosta di UIView. Mettono solo l'alfa di MBProgressHUD a 0 in modo che non sia visibile.

+0

Grazie per la risposta, ho controllato la modalità nascosta: metodo. Come hai detto, impostano il valore alfa su 0 e non usano la proprietà nascosta di UIView. Mi chiedo se dovrebbero aggiornare la proprietà nascosta? – chancyWu

4

ho scoperto che:

In MBProgressHUDisHidden Metodo Per impostazione predefinita impostata NO modo da poter ottenere tutto il tempo per (Quando si controlla) NO. Non controlli le interviste.

Per Controllo MBProgressHUD Stato nascondi/mostra.

Impostare [HUD setHidden:YES]; dopo [HUD hide:YES]; quindi dopo che funzionerà correttamente.

NSLog(@"HUD isHidden: %@",[HUD isHidden] ? @"YES" : @"NO"); 
//Output in consol YES 
+0

sì, hai ragione. Ho controllato l'implementazione hide, ha cambiato il valore alfa su 0 per nascondere la vista e non ha aggiornato la proprietà nascosta. E a modo tuo, posso verificare il valore nascosto. Grazie della tua risposta. – chancyWu

+0

ma penso che la risposta di Rahul sia migliore per me. lui mi mostra l'implementazione hide. voterò per te – chancyWu

+0

sei il benvenuto :) – chancyWu