2013-07-21 18 views
6

Sto cercando di mostrare un'immagine su MBProgressHUD utilizzando questo codiceMBProgressHUD visualizzazione personalizzata non appare

MBProgressHUD *HUD = [[MBProgressHUD alloc] initWithView:self.navigationController.view]; 
[self.navigationController.view addSubview:HUD]; 
HUD.customView = [[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"37x-Checkmark"]] autorelease]; 
HUD.mode = MBProgressHUDModeCustomView; 
HUD.labelText = @"تم إرسال وزنك بنجاح"; 

[HUD show:YES]; 
[HUD hide:YES afterDelay:1.5]; 

ma questo è ciò che ottengo

enter image description here

qual è il problema ?

+1

Ho provato il codice e funziona per me. È solo che ho usato self.view come superview di HUD. assicurati di aver scaricato l'immagine giusta. Dovrebbe essere 37 x 37 pixel –

+0

Devi solo inserire .png in [UIImage ImageNamed], non sa quale sia l'estensione del file al momento, quindi non getterà nulla ... T –

+0

[UIImage imageNamed:] does non richiede l'estensione del file quando viene utilizzato con un PNG. L'estensione del file è richiesta, tuttavia, per altri tipi di file. Per quello che vale, imageNamed eseguirà anche l'auto-cache e determinerà il file corretto per la scala/DPI dello schermo del dispositivo se il file è denominato usando le convenzioni di denominazione grafica di Apple, come "myfile @ 2x" vs. "miofile". In entrambi i casi, verrà assunto "png" anche se non è specificato per "imageNamed:". – Woodster

risposta

2

Ho provato il codice e funziona per me.

Nel file di MBProgressHud.h, nei commenti si dice che

/** 
* The UIView (i.g., a UIIMageView) to be shown when the HUD is in MBProgressHUDModeCustomView. 
* For best results use a 37 by 37 pixel view (so the bounds match the build in indicator bounds). 
*/ 

Così forse l'immagine che hai usato sia mancante o è noyt incluso. Si prega di controllare quello

0

È necessario includere le immagini da this link nel progetto xcode, sembra che non l'abbiate fatto.

0

Questo perché l'immagine non è denominata "37x-Segno di spunta" nel progetto. Basta aggiungere il file di immagine 37x-Checkmark.png nel tuo progetto.

+1

in realtà ho – OXXY

0
Now it is changed with IOS & 

-(IBAction)save:(id)sender 
{ 
     HUD = [[MBProgressHUD alloc] initWithWindow:[[UIApplication sharedApplication] keyWindow]]; 
     [[[UIApplication sharedApplication] keyWindow] addSubview:HUD]; 

     HUD.delegate = self; 
     HUD.labelText = @"Initiating Entropy..."; 
     HUD.minSize = CGSizeMake(135.f, 135.f); 
     [HUD showWhileExecuting:@selector(myTask) onTarget:self withObject:nil animated:YES]; 
} 

-(void)myTask 
{ 
    sleep(6); 
    UIView *v = [[UIView alloc] init]; 
    UIImageView *img = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"check_mark_green"]]; 
    [v setFrame:CGRectMake(0, 0, img.frame.size.width, img.frame.size.height)]; 
    v.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"37x-Checkmark"]]; 

    HUD.mode = MBProgressHUDModeCustomView; 
    HUD.customView = v; 
    HUD.labelText = nil; 
    HUD.detailsLabelText = @"Geo-Location Cordinates Secured"; 
} 

prova questo e goditi il ​​codice.

Problemi correlati